我的查询需要一些输入。我试图做的是将用户输入的时间与数据库中存储的时间 block 进行比较,以检查该时间段是否可用。
然而,我遇到的问题是用户的值在一个表中,而值 block 在另一个表中。我的查询如下。任何帮助,将不胜感激。我已经用尽了所有的想法!
EmpID = FOREIGN KEY
示例:
用户输入 - 2016-04-06 09-00-00(数据库中的日期时间类型) 然后我运行我认为是下面的这个查询,看看是否有时间 可以说 2016-04-06 09-00-00 和 2016-04-06 10-00-00 之间可用的 block
然后我更新该时间为可以安排。
UPDATE TimeRequestedTable
SET AppointTime = "inputed by user"
WHERE EmpID IN
(SELECT BlockTimesTable.EmpID
FROM BlockTimesTable
WHERE
(SELECT AppointTime
FROM TimeRequestedTable)
BETWEEN startTime and EndTime);
最佳答案
看来你需要一个内连接更新
UPDATE TimeRequestedTable
INNER JOIN BlockTimesTable ON BlockTimesTable.EmpID = TimeRequestedTable.EmpID
SET AppointTime = "inputed by user"
WHERE AppointTime BETWEEN startTime and EndTime
关于mysql - 如何查询和比较两个表的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36458767/