Php Mysql选择有例外

Php Mysql选择有例外,php,mysql,Php,Mysql,我想用mysql中的数据创建一个表,但有一些例外。更确切地说,我有: $data = mysql_query("SELECT `id` FROM `dates` WHERE `user`='x'"); $exceptions = mysql_query("SELECT `id` FROM `exceptions` WHERE `user`='x'"); 我想做一些像: for($j=1; $date = mysql_fetch_object($data); $j++) if($data-&g

我想用mysql中的数据创建一个表,但有一些例外。更确切地说,我有:

$data = mysql_query("SELECT `id` FROM `dates` WHERE `user`='x'");
$exceptions = mysql_query("SELECT `id` FROM `exceptions` WHERE `user`='x'");
我想做一些像:

for($j=1; $date = mysql_fetch_object($data); $j++)
if($data->id == $exceptions->id) return null;
但我不想从数据中获取行,使用$exceptions中相同的ID,比如:

for($j=1; $date = mysql_fetch_object($data); $j++)
if($data->id == $exceptions->id) return null;

因此,如果在$data中有1、2、3、4、5,在$exception中有4,我只想返回第1、2、3、5行,您只需要一个查询:

SELECT id FROM dates WHERE user = 'x' AND id NOT IN (SELECT id FROM exceptions WHERE user = 'x'))
编写该查询也有多种方法。您应该始终只检索所需的数据