Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 左连接查询失败_Sql_Sqlite - Fatal编程技术网

Sql 左连接查询失败

Sql 左连接查询失败,sql,sqlite,Sql,Sqlite,想知道是否有人可以解释为什么我的查询在SQLite中没有给出所需的结果 我有两张桌子 表A包含许多行,其中有一个名为picklist_id的列,其中的值是重复的,我试图获取这些行的不同值,然后检查表2中是否存在此picklist id。这就是我所拥有的,但我只是得到了一个空的结果 SELECT distinct(pt.picklist_id) from picklisttable pt LEFT JOIN pickingtable p on pt.picklist_id = p.picklis

想知道是否有人可以解释为什么我的查询在SQLite中没有给出所需的结果

我有两张桌子

表A包含许多行,其中有一个名为picklist_id的列,其中的值是重复的,我试图获取这些行的不同值,然后检查表2中是否存在此picklist id。这就是我所拥有的,但我只是得到了一个空的结果

SELECT distinct(pt.picklist_id) from picklisttable pt LEFT JOIN pickingtable p on 
pt.picklist_id = p.picklist_id where p.picklist_id = null

有人能给我指出正确的方向吗?如果表b中不存在选择列表id,我希望返回表a中的选择列表id。相同的查询,但不是
=NULL
而是
为NULL

SELECT distinct(pt.picklist_id) from picklisttable pt LEFT JOIN pickingtable p on 
pt.picklist_id = p.picklist_id where p.picklist_id IS null

试试这个。相同的查询,但不是
=NULL
而是
为NULL

SELECT distinct(pt.picklist_id) from picklisttable pt LEFT JOIN pickingtable p on 
pt.picklist_id = p.picklist_id where p.picklist_id IS null

试试这个。相同的查询,但不是
=NULL
而是
为NULL

SELECT distinct(pt.picklist_id) from picklisttable pt LEFT JOIN pickingtable p on 
pt.picklist_id = p.picklist_id where p.picklist_id IS null

试试这个。相同的查询,但不是
=NULL
而是
为NULL

SELECT distinct(pt.picklist_id) from picklisttable pt LEFT JOIN pickingtable p on 
pt.picklist_id = p.picklist_id where p.picklist_id IS null

这应该是isnull,而不是=NULL

SELECT pt.picklist_id 
FROM picklisttable pt 
LEFT JOIN pickingtable p on pt.picklist_id = p.picklist_id 
WHERE p.picklist_id = null;
当请求数据的存在性时,EXISTS子句通常可读性更强,而IN子句仅处理一列时可读性更强

SELECT pt.picklist_id 
FROM picklisttable pt 
WHERE NOT EXISTS (select * from pickingtable p where pt.picklist_id = p.picklist_id);

或处理集合和使用,除了我认为更可读的:

SELECT picklist_id FROM picklisttable
EXCEPT
SELECT picklist_id FROM pickingtable;

这应该是isnull,而不是=NULL

SELECT pt.picklist_id 
FROM picklisttable pt 
LEFT JOIN pickingtable p on pt.picklist_id = p.picklist_id 
WHERE p.picklist_id = null;
当请求数据的存在性时,EXISTS子句通常可读性更强,而IN子句仅处理一列时可读性更强

SELECT pt.picklist_id 
FROM picklisttable pt 
WHERE NOT EXISTS (select * from pickingtable p where pt.picklist_id = p.picklist_id);

或处理集合和使用,除了我认为更可读的:

SELECT picklist_id FROM picklisttable
EXCEPT
SELECT picklist_id FROM pickingtable;

这应该是isnull,而不是=NULL

SELECT pt.picklist_id 
FROM picklisttable pt 
LEFT JOIN pickingtable p on pt.picklist_id = p.picklist_id 
WHERE p.picklist_id = null;
当请求数据的存在性时,EXISTS子句通常可读性更强,而IN子句仅处理一列时可读性更强

SELECT pt.picklist_id 
FROM picklisttable pt 
WHERE NOT EXISTS (select * from pickingtable p where pt.picklist_id = p.picklist_id);

或处理集合和使用,除了我认为更可读的:

SELECT picklist_id FROM picklisttable
EXCEPT
SELECT picklist_id FROM pickingtable;

这应该是isnull,而不是=NULL

SELECT pt.picklist_id 
FROM picklisttable pt 
LEFT JOIN pickingtable p on pt.picklist_id = p.picklist_id 
WHERE p.picklist_id = null;
当请求数据的存在性时,EXISTS子句通常可读性更强,而IN子句仅处理一列时可读性更强

SELECT pt.picklist_id 
FROM picklisttable pt 
WHERE NOT EXISTS (select * from pickingtable p where pt.picklist_id = p.picklist_id);

或处理集合和使用,除了我认为更可读的:

SELECT picklist_id FROM picklisttable
EXCEPT
SELECT picklist_id FROM pickingtable;


对于where子句,请尝试“p.picklist\u id为null”而不是“p.picklist\u id=null”

对于where子句,请尝试“p.picklist\u id为null”而不是“p.picklist\u id=null”

对于where子句,请尝试“p.picklist\u id为null”而不是“p.picklist\u id=null”

对于where子句,请尝试“p.picklist\u id为null”“p.picklist_id=null“

您不能使用packlist\u id离开join,然后要求它为null。@GordonLinoff我的原始查询在pt.picklist\u id周围有一个不同的包装,我为了测试而删除了它,但在发布之前忘了再次添加它,我将编辑我的qnow@Bob-那你建议我怎么做?这是我的sql知识所能达到的极限@戴夫。鲍勃完全错了。你这样做是对的。@GordonLinoff-谢谢!您不能使用packlist_id离开join,然后要求它为null。@GordonLinoff我的原始查询在pt.picklist_id周围有一个不同的包装,我删除了它以进行测试,并忘记在发布之前再次添加它,我将编辑我的qnow@Bob-那你建议我怎么做?这是我的sql知识所能达到的极限@戴夫。鲍勃完全错了。你这样做是对的。@GordonLinoff-谢谢!您不能使用packlist_id离开join,然后要求它为null。@GordonLinoff我的原始查询在pt.picklist_id周围有一个不同的包装,我删除了它以进行测试,并忘记在发布之前再次添加它,我将编辑我的qnow@Bob-那你建议我怎么做?这是我的sql知识所能达到的极限@戴夫。鲍勃完全错了。你这样做是对的。@GordonLinoff-谢谢!您不能使用packlist_id离开join,然后要求它为null。@GordonLinoff我的原始查询在pt.picklist_id周围有一个不同的包装,我删除了它以进行测试,并忘记在发布之前再次添加它,我将编辑我的qnow@Bob-那你建议我怎么做?这是我的sql知识所能达到的极限@戴夫。鲍勃完全错了。你这样做是对的。@GordonLinoff-谢谢!谢谢,+1您的答案将@thorsten标记为完整性正确,并提供其他选项谢谢,+1您的答案将@thorsten标记为完整性正确,并提供其他选项谢谢,+1您的答案将@thorsten标记为完整性正确,并提供其他选项谢谢,+1您的答案,但将@thorsten标记为完整性正确,并提供其他选项