+ -
当前位置:首页 → 问答吧 → mysql时间段查询

mysql时间段查询

时间:2011-11-03

来源:互联网

我用delphi操作按时间段来查询数据,
select * from ykt_mk_membersys where YKT_Mk_MemberSys42>=date_format('2011-1-1','%y-%m-&d') and YKT_Mk_MemberSys42<=date_format('2011-11-1','%y-%m-&d') order by YKT_Mk_MemberSys42 desc
这样好像不行
我记得ORALCE里面是可以直接用todate('2011-1-1','yyyy-mm-dd')的,请赐教

作者: fqcotory   发布时间: 2011-11-03

如果你的YKT_Mk_MemberSys42字段是日期型,则可以直接如下。
select * from ykt_mk_membersys 
where YKT_Mk_MemberSys42>='2011-1-1'
and YKT_Mk_MemberSys42<='2011-11-1'
order by YKT_Mk_MemberSys42 desc

MYSQL会自动进行转换,不必象ORACLE中需要使用TO_DATE来转换字符串为日期。

作者: ACMAIN_CHM   发布时间: 2011-11-03

select   *   from   ykt_mk_membersys   where   YKT_Mk_MemberSys42> =date_format( '2011-1-1 ', '%y-%m-&d ')   and   YKT_Mk_MemberSys42 <=date_format( '2011-11-1 ', '%y-%m-&d ')   order   by   YKT_Mk_MemberSys42   desc
这样好像不行

Y是大写的,怎么不行?

作者: WWWWA   发布时间: 2011-11-03

非常感谢你们的回答。其实这样也可以:
select * from ykt_mk_membersys where (YKT_Mk_MemberSys10<>'''' or YKT_Mk_MemberSys10 is not null) and (YKT_Mk_MemberSys42 between DATE_SUB(''' + firstdate + ''',INTERVAL 1 DAY) and DATE_SUB(''' + lastdate + ''',INTERVAL 1 DAY)) order by YKT_Mk_MemberSys42 desc

我在网上找到的资料,呵呵,谢谢!

作者: fqcotory   发布时间: 2011-11-03

相关阅读 更多