我的数据库表中有一列以 (mmm-yy) 格式保存日期,例如:8 月 13 日。我正在尝试选择 Jun-12 之后的所有日期。问题是列是一个字符串,所以当我说 WHERE column > 'Jun-12' 它给我的值按字母顺序大于 Jun-12,例如 May-12,这不是我想要的。关于如何解决这个问题有什么想法吗?
最佳答案
将日期存储为日期,而不是字符串。这是推荐的做法,我建议相应地更改您的代码。
在这种情况下,您可以使用 STR_TO_DATE
动态比较日期的功能:
SELECT * FROM table_name WHERE column > STR_TO_DATE('Jun-12','%m-%y');
希望这对您有所帮助!
关于php - SQL WHERE 子句 : sort by date for string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18640402/