mysql - 如何查询和比较两个表的值?

标签 mysql sql database

我的查询需要一些输入。我试图做的是将用户输入的时间与数据库中存储的时间 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/

相关文章:

sql - 在任何 PostgreSQL 语句(甚至不返回结果的语句)上调用 row_to_json(row)

Mysql友谊表 - 设计问题导致查询时变得复杂

sql - 从字符串中计算出的 id 作为数据库键

database - Oracle 的 SQL Buddy 替代品

MySQL选择多个排序依据

sql - 如何连接mysql表

mysql - YEAR(AVG(UNIX(date))) 与 ROUND(AVG(YEAR(date))) 不同

mysql - 如何使mysql在加载数据中将字段解释为字符串

sql - 如何在 SQL Server 中使用 Group By 获取运行小计

database - IntelliJ IDEA 10 从数据库模型生成实体(POJO)