如何Ø转换我的SQL返回日期时间,以更可读的字符串

问题描述:

我创建了事件的表在MySQL像如何Ø转换我的SQL返回日期时间,以更可读的字符串

CREATE TABLE events (
    id INT AUTO_INCREMENT PRIMARY KEY, 
    ts TIMESTAMP, 
    dt DATETIME 
); 

现在,当我查询表dt我越来越2018-01-04 00:00:00可以请你让我知道我怎样才能将其转换为要显示

+0

[转换一个日期格式转换成另一种在PHP]可能的复制(https://stackoverflow.com/questions/2167916/convert-one- date-format-into-another-in-php) – nogad

Jan, 4格式可以使用DATE_FORMAT()功能

SELECT DATE_FORMAT(dt, "%b, %e") as dt FROM events 

此外,还可以使用相同的功能INSERT语句

INSERT INTO events(`ts`, `dt`) 
VALUES ('some timestamp', DATE_FORMAT('2018-01-15 00:00:00', '%b, %e')) 
+0

非常感谢Erwin。任何想法我怎样才能在插入上激活相同的过程?我的意思是,如果用户在客户端插入'Jan,5',我怎样才能以'2018-01-05 00:00:00'的标准数据库格式插入数据库。 –

+0

@MonaCoder这个答案正是给你你所要求的。现在你正在扩大这个问题? – ryantxr

+0

@ryantxr,不伤害添加一些有用的代码。 MonaCoder,下次尝试练习将所有可能的问题添加到您的问题中。看到编辑答案:) – Erwin

<?php 
$val = "2018-01-04 00:00:00"; 
$time = date_create($val); 
echo date_format($time, "M, j"); 

// output: Jan, 4