Mysql 连接日期函数
mysql查询返回了意外的结果。我试图连接几个包含日期查询的字符串,如下所示:Mysql 连接日期函数,mysql,sql,date,datetime,Mysql,Sql,Date,Datetime,mysql查询返回了意外的结果。我试图连接几个包含日期查询的字符串,如下所示: mysql> select month(timestamp) +'-'+ day(timestamp) + '-' + year(timestamp) as date FROM table ORDER BY timestamp DESC LIMIT 1; 我得到一个4位数的结果,我假设它是预期结果的总和: +------+ | date | +------+ | 2035 | +------+
mysql> select month(timestamp) +'-'+ day(timestamp) + '-' +
year(timestamp) as date FROM table ORDER BY timestamp DESC LIMIT 1;
我得到一个4位数的结果,我假设它是预期结果的总和:
+------+
| date |
+------+
| 2035 |
+------+
我还尝试将每个字符转换为CHAR
,但没有成功:
mysql> select CAST(month(timestamp) as CHAR) +'-'+ CAST(day(timestamp) as CHAR) + '-' +
CAST(year(timestamp) as CHAR) as date FROM table ORDER BY timestamp DESC LIMIT 1;
有人能告诉我我做错了什么吗。。。我想如何修复它也很好:)在MySQL中,使用
CONCAT\u WS
CONCAT_WS('-', month(timestamp),day(timestamp),year(timestamp))
质疑,
SELECT CONCAT_WS('-', month(timestamp),day(timestamp),year(timestamp)) AS DATE
FROM tablename
ORDER BY timestamp DESC
LIMIT 1
或者使用DATE\u格式
SELECT DATE_FORMAT(timestamp, '%m-%d-%Y') AS DATE
FROM Table1
ORDER BY timestamp DESC
LIMIT 1
timestamp
是包含UNIX时间戳的整数列,请使用以下命令:
SELECT DATE_FORMAT(FROM_UNIXTIME(`timestamp`), '%m-%d-%Y') AS `Formatted Date`
...
SELECT DATE_FORMAT(`timestamp`, '%m-%d-%Y') AS `Formatted Date`
...
如果timestamp
是日期/日期时间列,请使用以下命令:
SELECT DATE_FORMAT(FROM_UNIXTIME(`timestamp`), '%m-%d-%Y') AS `Formatted Date`
...
SELECT DATE_FORMAT(`timestamp`, '%m-%d-%Y') AS `Formatted Date`
...
令人惊叹的!普通的老式
CONCAT
工作得很好。忘了那些。。。谢谢大家!<代码>+是最常用的(但在MSSQL中用于字符串连接)。