【发布时间】:2023-09-10 18:53:01
【问题描述】:
我正在编写一个 mysql 查询来获取两个日期之间的数据(例如:29-05-2021 到 08-06-2021)。但它仅显示当前月份(六月)的唯一数据。它没有显示(五月)月份的数据。
示例:
我于 2021 年 5 月 30 日被存放在 john,2021 年 5 月 31 日存放在 sam,2021 年 7 月 6 日存放 raja,2021 年 5 月 6 日存放 ramesh。当我运行时,查询只显示 raja, ramesh。它没有显示约翰和山姆。
这是我的mysql查询
SELECT staff_name FROM staff_info WHERE join_date <= '09-06-2021'
在数据库中,我以 varchar 方法存储日期,格式为 d-m-Y。
任何人都可以帮助解决这些问题。
【问题讨论】:
-
日期应始终存储在 DATE 数据类型中,这样您就不会遇到这些问题
-
in database i was stored date in varchar method...这是你的第一个错误。日期不是字符串(除非您向人们展示它们)。使用date列类型,您的生活会立即轻松很多。 -
现在您必须使用
str_to_date()将“未知文本位”转换为正确的日期,以便进行正确的日期处理