SQL从更多表中选择

时间:2013-12-09 17:46:36

标签: mysql sql select join database-table

美好的一天,

我有2个sql表。

Plaatsen

 - plid
 - x
 - y

Reservations

 - id
 - plid
 - startdate
 - enddate

预订中有一个Plaatsen.plid的外键

我想要的是:

我有1个约会(例如2013-12-09)我怎样才能找到表格中没有的所有plid?所以它不在startdate和enddate之间

这可能吗?有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

试试这个:

SELECT * FROM Plaatsen WHERE plid NOT IN (SELECT plid from Reservations where :date BETWEEN startdate AND enddate)

:date是您的控制日期。不要害怕subquerys,SQL服务器对它有很好的优化。

答案 1 :(得分:0)

SELECT P.Plid FROM Plaatsen p 
LEFT JOIN Reservations R ON P.Plid=R.Plid 
WHERE '2013-12-09' BETWEEN startdate AND enddate AND R.id IS NULL