检查两个单独的表对彼此 - Mysqli / PHP

时间:2015-02-03 21:42:07

标签: php mysql mysqli

我有两个表,一个包含用户信息(如客户ID,姓名,地址等),称为' 客户'和第二个表格,其中包含预约信息(例如链接它的客户ID,日期,时间等),称为“约会'为此,我试图搜索客户'但只会带回未安排预约的人,这基本上是指未在约会'中进行输入的客户。表。但是我生成的搜索是超时的mysqli,并在网关超时的情况下暂时崩溃。

我的代码:

    SELECT Cus.* FROM Customers Cus
WHERE Cus.School='FTHL' AND NOT EXISTS (
SELECT CustomerID FROM Appointments WHERE Cus.CustomerID = CustomerID)
 ORDER BY Cus.CustomerID ASC

我正在使用Cus。前缀,因为此sql搜索是基于用户在搜索表单中检查的选项构建的,例如,如果他们要搜索有约会的客户,它可以将约会表信息一起带到搜索中来自Customer表的用户信息。这样做很好,只是这样才能看到谁做了约会并没有工作。

这两个表看起来有点像这样:

Customers ------------------------------------
CustomerID, First Name, Last Name, School, etc

Appointments ---------------------------------
CustomerID, Date, Time, etc

1 个答案:

答案 0 :(得分:2)

尝试这样的事情:

SELECT Cus.* 
FROM Customers Cus
WHERE Cus.School='FTHL' 
AND Cus.CustomerID NOT IN (SELECT CustomerID FROM Appointments)
ORDER BY Cus.CustomerID ASC