我正在尝试创建一个查询,该查询将从我正在创建的预订系统的3个表中获取信息。
我需要查找超过30分钟的记录,并且客户ID存在于付款表
中我有以下表格:
预订
id
date
...
表格客户
id
booking_id
date_time
...
表格付款
id
client_id
booking_id
...
我尝试了以下内容:
SELECT * FROM client c
LEFT JOIN payments p
ON c.id = p.client_id
AND p.id = NULL
AND c.date_time < NOW() - INTERVAL 30 MINUTE
JOIN booking b on c.booking_id = b.id
唯一的问题还包括我不想要的付费客户,请帮我解决问题。
我只需要左连接,以便我可以获得那些未包含在桌面付款中的条目,我的应用程序实际上会在用户通过paypal付款时在付款表中添加条目。
答案 0 :(得分:1)
根据您的描述,您似乎只希望表之间有join
个。这样做你想要的吗?
SELECT *
FROM client c JOIN
booking b
on c.booking_id = b.id JOIN
payments p
ON c.id = p.client_id AND c.date_time < NOW() - INTERVAL 30 MINUTE