0

2 つのテーブルがあります.ステータス履歴を 1 つのテーブルに移動し、別のテーブルに表示しています.2 番目のテーブルは最近のステータスを取得し、それを Web ページに表示します出力

このように私は必要です..しかし、私は

必要な出力

更新されたレコードと空のステータス レコードが必要です。私のクエリは次のとおりです。

with ctr as
(
 select en.status update,ed.no,row_number()
 over (partition by ed.no order by en.update descending) as [RN], 
 ed.[conference date],ed.conference name,ed.region,ed.inquiry,
 ed.attended by,ed.doctor name,ed.hospital,ed.contact no,ed.email, ed.adds,
 CONVERT(VAR CHAR(10),en.[update], 103) as update,ed.closed,
 CONVERT(VAR CHAR(10),ed.[closing date],103) as closing date,
 ed.closed by, ed.revenue, ed.approve status, ed.Enid from inquiries_details ed
 inner join
 inquiries en on ed.Enid = en.Enid
 inner join
 staff_details SD on ed.region = SD.state
 where region = 'Maharashtra' 
)
 select * from ctr where RN = 1 

誰でも私を助けることができます

4

1 に答える 1

0

以下のクエリで試してみてください。内部結合の問題である可能性があります..左結合に変更してください

with ctr as
(
 select en.status update,ed.no,row_number()
 over (partition by ed.no order by en.update descending) as [RN], 
 ed.[conference date],ed.conference name,ed.region,ed.inquiry,
 ed.attended by,ed.doctor name,ed.hospital,ed.contact no,ed.email, ed.adds,
 CONVERT(VAR CHAR(10),en.[update], 103) as update,ed.closed,
 CONVERT(VAR CHAR(10),ed.[closing date],103) as closing date,
 ed.closed by, ed.revenue, ed.approve status, ed.Enid from inquiries_details ed
 left join
 inquiries en on ed.Enid = en.Enid
 left join
 staff_details SD on ed.region = SD.state
 where region = 'Maharashtra' 
)
 select * from ctr where RN = 1 
于 2013-03-26T06:18:15.710 に答える