gpt4 book ai didi

带有 INNER JOIN 的 Mysql WHERE

转载 作者:行者123 更新时间:2023-11-29 01:35:24 25 4
gpt4 key购买 nike

如何将 WHERE 子句与 table_1 中的字段一起使用,并通过 INNER JOIN 连接到 table_2。如下所示。

SELECT t1.result, t1.result_date
FROM outcomes t1
WHERE t1.status = 'finished'
INNER JOIN games t2
ON t1.game_id = t2.game_id
WHERE t2.closing_time < NOW();

下面是示例表:

游戏 table

-------------------------------------------------------
game_id name start_time closing_time
--------------------------------------------------------
1 aaa 2018-04-25 16:00:45 2018-04-25 16:30:45
2 bbb 2018-04-25 17:00:45 2018-04-25 17:30:45
3 ccc 2018-04-25 18:00:45 2018-04-25 18:30:45
---------------------------------------------------------------

结果表

----------------------------------------------------------------------
id game_id result round result_date status
----------------------------------------------------------------------
1 1 2,4,6 1 2018-04-25 16:15:45 finished
2 1 4,5,3 2 2018-04-25 16:35:45 canceled
3 2 1,2,4 1 2018-04-25 17:15:45 finished
4 2 5,2,4 2 2018-04-25 17:30:45 canceled
5 3 1,2,3 1 2018-04-25 18:15:45 finished
6 3 2,2,5 2 2018-04-25 18:30:45 to-be-confirmed
---------------------------------------------------------------------

假设当前时间是2018-04-25 18:13,我的预期输出是:

2,4,6        2018-04-25 16:15:45
1,2,4 2018-04-25 17:15:45

对应于结果表中 id 分别为 1 和 3 的行

最佳答案

WHERE子句只能有一个,而且必须在所有FROMJOIN子句之后。使用 AND 组合条件。

SELECT t1.result, t1.result_date
FROM outcomes t1
INNER JOIN games t2
ON t1.game_id = t2.game_id
WHERE t2.closing_time < NOW())
AND t1.status = 'finished'

关于带有 INNER JOIN 的 Mysql WHERE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50049132/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com