Between in mysql where 子句不起作用
Between in mysql where clause not working
我正在尝试 select 在 where 子句中使用 BETWEEN
日期范围内的数据,但 return 没有正确的 result.The 日期字段格式 'mm/dd/YYYY'
类型为 varchar
我的查询,
select * from time_track where track_date between '01/01/2015' and '01/21/2015'
但结果包含 2014 年的数据。
谁能帮帮我
您需要将日期字符串转换为实际日期
select * from time_track
where STR_TO_DATE(track_date ,'%d/%m/%Y') between '2015-01-01' and '2015-01-21'
或者为该列使用日期数据类型更好。
那么您不需要转换查询中的数据,可以使用索引,这使得它 运行 超级快。
试试这个合成器
select * 来自 time_track 其中 track_date >= '2015-01-01 00:00:00' AND track_date <= '2015-01-01 00:00:00'
我得到了答案。
SELECT * FROM `time_track` where DATE_FORMAT(STR_TO_DATE(track_date, '%c/%d/%Y'), '%Y-%m-%d') between '2015-01-01' and '2015-01-21'
首先转换您选择的两个日期
$from=strtotime(date("Y-m-d H:i:s", strtotime($yourfromdate)))
$to=strtotime(date("Y-m-d H:i:s", strtotime($yourtodate)))
select * from time_track where track_date>='$from' and track_date<='$to'
您的日期格式不正确。
您必须在查询中使用此格式:yyyy-mm-dd.
select * 来自 time_track 其中 track_date 在“2015-01-01”和“2015-01-21”之间
马可
要使 mysql between 子句按预期工作,理想值为整数、日期、时间或日期时间。尝试将数据类型从 varchar 更改为 datetime。这将完成您的比较工作。
我正在尝试 select 在 where 子句中使用 BETWEEN
日期范围内的数据,但 return 没有正确的 result.The 日期字段格式 'mm/dd/YYYY'
类型为 varchar
我的查询,
select * from time_track where track_date between '01/01/2015' and '01/21/2015'
但结果包含 2014 年的数据。
谁能帮帮我
您需要将日期字符串转换为实际日期
select * from time_track
where STR_TO_DATE(track_date ,'%d/%m/%Y') between '2015-01-01' and '2015-01-21'
或者为该列使用日期数据类型更好。
那么您不需要转换查询中的数据,可以使用索引,这使得它 运行 超级快。
试试这个合成器 select * 来自 time_track 其中 track_date >= '2015-01-01 00:00:00' AND track_date <= '2015-01-01 00:00:00'
我得到了答案。
SELECT * FROM `time_track` where DATE_FORMAT(STR_TO_DATE(track_date, '%c/%d/%Y'), '%Y-%m-%d') between '2015-01-01' and '2015-01-21'
首先转换您选择的两个日期
$from=strtotime(date("Y-m-d H:i:s", strtotime($yourfromdate)))
$to=strtotime(date("Y-m-d H:i:s", strtotime($yourtodate)))
select * from time_track where track_date>='$from' and track_date<='$to'
您的日期格式不正确。 您必须在查询中使用此格式:yyyy-mm-dd.
select * 来自 time_track 其中 track_date 在“2015-01-01”和“2015-01-21”之间
马可
要使 mysql between 子句按预期工作,理想值为整数、日期、时间或日期时间。尝试将数据类型从 varchar 更改为 datetime。这将完成您的比较工作。