我有两个表(table1和table2)table1有两列day和timeSlot。 table2还有day和timeSlot列。 table1具有日期和时间行,table2具有包含日期和时间的插入数据的行。我的问题是
我正在尝试编写一个查询字符串,它会显示未采用的日期列表。
我尝试了以下内容:
但它会返回非常随机的行,实际上它只会占用其中一个日期和时间。
SELECT table1.day, table1.timeSlot
FROM woodlandsBookingVipSalesDates
INNER JOIN table1 ON table1.day != table2.day AND table1.timeSlot != table2.timeSlot
我的问题是我如何获得没有拍摄日期和时间的列表。
答案 0 :(得分:2)
你的问题不是很清楚
我假设woodlandsBookingVipSalesDates包含所有使用的日期和时间段,table_1包含所有可用的日期和时间段
所以我会简单地做
SELECT table1.day, table1.timeSlot
FROM table_1 WHERE
(day, timeSlot) NOT IN (SELECT day, timeSlot FROM woodlandsBookingVipSalesDates )
答案 1 :(得分:1)
假设您的意思是woodlandsBookingVipSalesDates
为table1
并加入table2
...
使用NOT EXISTS
SELECT t1.day, t1.timeSlot
FROM table1 t1
WHERE NOT EXISTS (SELECT NULL
FROM table2 t2
WHERE t1.day != t2.day
AND t1.timeSlot != t2.timeSlot
)