gpt4 book ai didi

mysql - 在 MySql 的 where 子句中使用别名

转载 作者:行者123 更新时间:2023-12-02 01:47:33 25 4
gpt4 key购买 nike

我有这个表结构:

<表类=“s-表”><标题>HDN_ClientHDN_TypeHDN_EndDate <正文>客户端#1托管2022-02-01客户端#2托管2022-03-01客户端#3托管2022-07-30

我想在 HDN_EndDate 时显示数据列表今天日期与 HDN_EndDate 之间的天数不超过 60 天日期。

我的查询如下:

SELECT *, 
DATEDIFF(HDN_EndDate, '2022-01-17')
AS HDN_DateDiff
FROM ___table
WHERE HDN_Type='Hosting'
AND HDN_DateDiff<60
ORDER BY HDN_DateDiff ASC

但它说 HDN_DateDiff不能在 WHERE 子句中使用。

我怎样才能让它发挥作用?

最佳答案

您不能引用同一 SELECT 中定义的 WHERE 子句中的别名。 MySQL 重载其 HAVING 子句以允许它使用别名。以下版本应该可以工作:

SELECT *, DATEDIFF(HDN_EndDate, '2022-01-17') AS HDN_DateDiff
FROM ___table
WHERE HDN_Type = 'Hosting'
HAVING HDN_DateDiff < 60
ORDER BY HDN_DateDiff;

关于mysql - 在 MySql 的 where 子句中使用别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70749917/

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