Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.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
Mysql 从另一个表中不存在列值的表中选择_Mysql_Sql - Fatal编程技术网

Mysql 从另一个表中不存在列值的表中选择

Mysql 从另一个表中不存在列值的表中选择,mysql,sql,Mysql,Sql,我的问题是,我想防止查询结果显示另一个表位中存在的行,您可以使用: SELECT Id, Name, Lastname FROM customers AS c, Places AS p, WHERE c.customer_ID = p.customer_ID 这是使用in/exists的更快方法。添加 SELECT Id, Name, Lastname FROM customers AS c JOIN Places AS p USING(customer_ID) 对于您的查询您可以执行

我的问题是,我想防止查询结果显示另一个表位中存在的行,您可以使用:

SELECT  Id, Name, Lastname
FROM customers AS c, Places AS p, 
WHERE c.customer_ID = p.customer_ID
这是使用in/exists的更快方法。

添加

SELECT  Id, Name, Lastname
FROM customers AS c JOIN Places AS p USING(customer_ID)

对于您的查询

您可以执行左连接并检查空值

and not exists
(subquery to select your exclusions)

我想你想要这样的东西:

选择Id、名称、姓氏 来自客户,
如果customer\u ID不在SELECT customer\u ID FROM Places

对不起,我想说的是,如果使用IF NOT EXISTS构造,或者在ON子句中左键连接另一个表,其中另一个表中的某个不可为NULL的列为NULL。MySQL支持using关键字吗?你指的是什么关键字?非常感谢,那很有用,嘿,又来了!!对不起,我是新手。结果正好相反,我想要阻止显示该行的查询结果(如果存在)到另一个表。对于大型数据集,not in非常慢。你是对的。再想一想,显然不存在一定要快。它可以停止时,一个记录被发现,而我应该检查所有的记录在不在。。。部分
SELECT  Id, Name, Lastname
FROM customers AS c LEFT JOIN Places AS p ON c.customer_ID = p.customer_ID
WHERE p.customer_ID IS NULL