「DB2 存在しない値を取得する」の版間の差分
ナビゲーションに移動
検索に移動
(同じ利用者による、間の2版が非表示) | |||
1行目: | 1行目: | ||
− | ==DB2 存在しない値を取得する== | + | ==[[DB2 存在しない値を取得する]]== |
− | [[DB2][Database]] | + | [[DB2]] | [[Database]] | [[Category:SQL]] |
{{amazon|4873113156}} | {{amazon|4873113156}} | ||
13行目: | 13行目: | ||
===NOT IN=== | ===NOT IN=== | ||
*NOT IN利用時には、NULLに注意 | *NOT IN利用時には、NULLに注意 | ||
− | *NULLを含む場合に、NOT IN を行うと、行を返さない( | + | *NULLを含む場合に、NOT IN を行うと、行を返さない([[SQL]]では、TRUE or NULL -> TRUE だが、FALSE or NULL -> NULL) |
select distinct deptno from department | select distinct deptno from department | ||
where deptno not in (select workdept from employee) | where deptno not in (select workdept from employee) |
2020年2月16日 (日) 04:24時点における最新版
DB2 存在しない値を取得する
EXCEPT
- EXCEPTを利用すると、容易になる
- 重複業は返さず、NOT INを使う場合に対象にNULLが含まれると結果が返らないという問題は起こらない。
select deptno from department except select workdept from employee
NOT IN
- NOT IN利用時には、NULLに注意
- NULLを含む場合に、NOT IN を行うと、行を返さない(SQLでは、TRUE or NULL -> TRUE だが、FALSE or NULL -> NULL)
select distinct deptno from department where deptno not in (select workdept from employee)
© 2006 矢木浩人