質問 |
||
| 質問者:lvupgogo | SELECT 文で | |
|---|---|---|
困り度:
|
覚え始めで、どうにも上手くいかず困っております。 テーブル「個人ファイル」「個人ファイル2」 それぞれに「個人NO」の項目があります 「個人ファイル1」に存在し「個人ファイル2」に 存在しない「個人NO」の一覧を取得するには どうしたらよいのでしょうか? SQLSERVER でEXCEPTが使えなくて・・ どなたかお願いです。教えてください。 |
|
質問投稿日時:08/04/10 23:19 質問番号:3938926 |
||
回答 |
|
| 回答者:chukenkenkou | SQL Serverも、バージョンによってSQL実装の状況が違いますから、明記するようにしてください。 差分検索ですぐに思いつくのは、以下のようなSQLです。 -- 例1 not existsを使う select * from 個人ファイル as pf1 where not exists (select 1 from 個人ファイル2 as pf2 where pf1.個人NO=pf2.個人NO) -- 例2 not inを使う select * from 個人ファイル where 個人NO not in(select 個人NO from 個人ファイル2) -- 例3 outer joinを使い、対応するキーがなかった行を検索 select pf1.* from 個人ファイル as pf1 left join 個人ファイル2 as pf2 on pf1.個人NO=pf2.個人NO where pf2.個人NO is null |
|---|---|
| 種類:アドバイス どんな人:一般人 自信:参考意見 |
|
| |
回答日時:08/04/11 02:10 回答番号:No.1 |
|
| この回答への補足 | この回答に補足をつける(質問者のみ) |
| この回答へのお礼 | この回答にお礼をつける(質問者のみ) |