案例:
需要存储格式未改变的日期常量格式" YYYYMMDD"?
在文本文件中获取const数据,如:20120201 20110101等...应该放在表格字段中
(我希望将它存储为快速查询的日期)
我认为mysql直接支持它" Date"型
表格:
id| mydate |
-------------------
1 | 20120201 |
2 | 20110101 |
由于
答案 0 :(得分:1)
要变成可以存储在DATE类型字段中的MySQL日期:
$original = 20120924;
$mysql_format = substr($original, 0, 4) . '-' . substr($original), 4, 2) . '-' . substr($original, 6, 2);
希望有所帮助。
(可选地,您可以将其存储为时间戳格式的INT以获得快速结果,只需将$ mysql_format转换为带有strtotime()的时间戳;)
答案 1 :(得分:1)
将其存储为MySQL日期类型。当您需要查询不带破折号的信息时,请使用MySQL替换函数,如:
REPLACE(date_column,'-','') as 'const_date'
在插入/更新时将const_date转换为mysql日期格式,使用带有SUBSTR的MySQL CONCAT:
CONCAT(
SUBSTR(const_date, 1, 4)
, ','
, SUBSTR(const_date, 5, 2)
, ','
, SUBSTR(const_date, 7, 2)
) as 'mysql_date'
(与PHP不同,MySQL不会对第一个char位置使用零索引)