gpt4 book ai didi

mysql - 在 SQL 语句中插入 "WHERE"条件的位置

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

我有以下 SQL,它运行良好:

"SELECT t.id, t.date, t.time, t.balance FROM db1 t JOIN (SELECT tt.date, MAX(tt.time) as 'maxtime' FROM db1 tt GROUP BY tt.date) m ON m.maxtime = t.time AND t.date = m.date"

我现在想要的是插入一个 WHERE 条件,只包含特定日期的数据。具体来说,我想使用 WHERE date >= '$dateSelect'。我不太确定我必须将此条件插入到查询的哪个位置才能使其工作 - 我已经尝试了几个位置(总是在 FROM db1 部分后面)但尚未使其工作。

谁能帮帮我?非常感谢您的帮助!

最佳答案

由于您使用的是内部联接,因此可以将此 where 子句应用于顶级查询或内部查询。就个人而言,我会将其应用于两者。在最坏的情况下,它会使代码有点困惑。在最好的情况下,您可以在加入优化器可能错过的两个结果之前应用额外的过滤:

SELECT t.id, t.date, t.time, t.balance 
FROM db1 t
JOIN (SELECT tt.date, MAX(tt.time) as 'maxtime'
FROM db1 tt
WHERE tt.date >= '$dateSelect' -- Here
GROUP BY tt.date) m ON m.maxtime = t.time AND t.date = m.date
WHERE t.date >= '$dateSelect' -- And here

关于mysql - 在 SQL 语句中插入 "WHERE"条件的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31958178/

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