2011-12-11 5 views
1

テーブルにはissue_date,part_numおよびdate_receivedの列があります。隣人エントリーから日付を挿入

issue_datenullであれば、私はpart_num + 1issue_date(次の部品番号)を選択し、なし発行日で一部のissue_date列に挿入します。

part_numは順次です。

どのSQL文で適切な発行日を挿入するのですか?

ご協力いただきありがとうございます。

ほんの少し自己紹介文でわかりました。お望みなら削除してください!!

答えて

2

このお試しください:

update t 
set t.issue_date = (select issue_date 
         from t t1 
         where t1.part_num = t.part_num+1) 
where t.issue_date is null 

をしかし、次の部分の数もissue_dateを持っていない場合、これはissue_dateでヌルのをramainます。この問題を解決するには、クエリを次のように変更してください(アプリケーションに適している場合):

update t 
set t.issue_date = (select min(issue_date) 
         from t t1 
         where t1.part_num > t.part_num) 
where t.issue_date is null 
+0

ありがとうございます。私はまだ次のヌル問題を考えていましたが、あなたはそれを最も優雅に解決しました。 – JcR49