我有两个表,一个包含用户信息(如客户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
答案 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