gpt4 book ai didi

mysql - SQL select语句比较格式化日期

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

我在尝试编写 SQL 语句来获取日期大于今天的记录时遇到一些问题。这是我的 SQL 语句:

SELECT e.eventID, e.eventName, e.eventDesc, e.eventTime, e.eventX, e.eventY, e.eventBy, e.eventPic, 
e.eventAddr, e.eventDate
FROM mydb.event e INNER JOIN mydb.bookedevent be ON e.eventID = be.eventID
WHERE DATE_FORMAT(e.eventDate, '%Y-%m-%d') >= CURDATE()

我在事件表中的日期采用 varchar() 格式,格式如下:22/11/2014。我有一些符合此条件的记录,但我收到了 0 条返回记录。所以,我去测试通过这个SQL语句获取格式化的日期列:

SELECT DATE_FORMAT(e.eventDate, '%Y/%m/%d') FROM mydb.event e

我得到了几行空记录。

最佳答案

您的日期存储为 varchar 并将其转换为您需要的实际日期 str_to_date

select str_to_date('22/11/2014','%d/%m/%Y') as date ;
+------------+
| date |
+------------+
| 2014-11-22 |
+------------+

所以在比较中你应该使用上面的方法。

注意:最好将日期存储在 mysql native 日期数据类型中,而不是 varchar

关于mysql - SQL select语句比较格式化日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26995411/

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