0

我是 MySQL 新手,正在尝试构建执行以下操作的 MySQL 查询:

表 A:时间戳 | id_num

表 B:部门 | 第一个ID | second_id

  • 表 A 可能包含重复的 id_num,如果存在重复,结果应该只返回一次任何 id_num
  • id_nums 必须在上周内记录
  • 给定一个特定的部门,我想搜索表 B 中介于 first_id 和 second_id 之间的任何 id_num。

这是我迄今为止尝试过的但没有成功的方法:

SELECT DISTINCT id_num FROM AWHERE timestamp> '2013-09-19 00:00:00' AND id_num BETWEEN (SELECT first_idFROM BWHERE dept= X) AND (SELECT last_idFROM B WHERE dept= X)

关于如何最好地进行此类操作的任何提示?提前致谢。

4

1 回答 1

0

当您想关联两个表中的列时,通常使用 JOIN:

SELECT distinct id_num
FROM A
JOIN B ON A.id_num < B.first_id AND B.second_id
WHERE A.timestamp > '2013-09-19 00:00:00'
AND B.dept = X
于 2013-09-27T01:09:31.543 回答