从表中选择日期并使用php以不同的格式显示它

时间:2012-06-10 21:44:39

标签: php mysql

Hy all ..我有一张桌子,我用以下格式存储日期:'YYYY-mm-dd 00-00-00'。现在我想制作一个select语句并显示所有记录,其中日期是我给出的日期。像这样:

$c=mysql_query("SELECT * FROM useri where data_creare_user BETWEEN '2012-06-01' AND '20120-06-05' ");   

$d=mysql_fetch_array($c);

echo $d['nume'];

我知道我必须以某种方式转换表格中的日期,但我似乎无法弄清楚。你能告诉我锄头根据选择陈述显示记录吗?

2 个答案:

答案 0 :(得分:1)

如果您的data_creare_user列不是合适的temporal data type数据类型,则应该是。{p>然后:

SELECT *
FROM   useri
WHERE  DATE(data_creare_user) BETWEEN '2012-06-01' AND '2012-06-05'

答案 1 :(得分:0)

听起来你正在使用VARCHAR将日期保存为字符串。如果您可以更改架构,最好使用DATE或DATETIME类型。也就是说,MySQL提供函数STR_TO_DATE()来帮助解决这个问题。您的查询将类似于:

SELECT * FROM useri WHERE STR_TO_DATE(data_creare_user, '%Y-%m-%d %H-%i-%s') BETWEEN STR_TO_DATE('2012-06-01', '%Y-%m-%d') AND STR_TO_DATE('20120-06-05','%Y-%m-%d');