gpt4 book ai didi

MySQL:获取创建日期字符串比给定日期字符串新的行

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

我正在尝试使用以下代码创建一个准备好的语句:

$statement = $db->prepare("SELECT * FROM myTable WHERE 
STR_CMP(creationDate, $startingDate) = 1 ORDER BY creationDate DESC ");

我也尝试过这个:

$statement = $db->prepare("SELECT * FROM myTable WHERE 
(creationDate > $startingDate) = 1 ORDER BY creationDate DESC ");

但是我得到了 null $statement。我的目标是获取其创建日期比给定日期字符串新的行。我的 creationDate 列存储为字符串。

我已经记录了我的查询字符串,它看起来像:

SELECT * FROM myTable WHERE (creationDate > 05.02.2015 14:08:31) = 1 ORDER BY creationDate DESC

我做错了什么?

最佳答案

1) 您必须比较日期与日期。

SELECT * FROM myTable WHERE 

DATE_FORMAT(STR_TO_DATE(creationDate, '%d.%m.%Y %H:%i:%s'),'%d.%m.%Y %H:%i:%s')

> '.$startingDate.' ORDER BY creationDate DESC

提示

2)将日期存储在数据库中作为日期而不是字符串

3) 您的日期字符串似乎无效?为什么不是 YYYYMMDD。

ORDER BY createDate DESC 可能会隐含意外结果

关于MySQL:获取创建日期字符串比给定日期字符串新的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28343454/

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