[英]SQLite NOT NULL
如果(stage1_choice,stage2_choice或stage3_choice)value = null中的任何一个,如何排除该行?
我试过了:
SELECT r.breakout_id ,
r.case_id ,
r.stage_id ,
r.chart_id ,
s.stage1_choice ,
s.stage2_choice ,
s.stage3_choice
FROM Results AS r ,
Submissions AS s
WHERE r.breakout_id = '1'
AND s.breakout_id = '1'
AND r.case_id = s.case_id
AND stage_id < 4
AND s.stage1_choice NOT NULL
AND s.stage2_choice NOT NULL
AND s.stage3_choice NOT NULL
但它仍返回其中一列中包含null的行。
not null的正确语法是不同的,它是IS NOT NULL
AND s.stage1_choice IS NOT NULL
AND s.stage2_choice IS NOT NULL
AND s.stage3_choice IS NOT NULL
从文档
- 要测试NULL,请使用IS NULL和IS NOT NULL运算符
在这里了解更多
尝试
SELECT r.breakout_id, r.case_id, r.stage_id, r.chart_id, s.stage1_choice, s.stage2_choice, s.stage3_choice
FROM Results as r, Submissions as s
WHERE r.breakout_id = '1' AND s.breakout_id = '1' AND r.case_id = s.case_id AND stage_id < 4 AND s.stage1_choice NOT NULL AND s.stage2_choice IS NOT NULL AND s.stage3_choice IS NOT NULL
要么
SELECT r.breakout_id, r.case_id, r.stage_id, r.chart_id, s.stage1_choice, s.stage2_choice, s.stage3_choice
FROM Results as r, Submissions as s
WHERE r.breakout_id = '1' AND s.breakout_id = '1' AND r.case_id = s.case_id AND stage_id < 4 AND s.stage1_choice != '' AND s.stage2_choice != '' AND s.stage3_choice != ''
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.