php - mySQL如何更改日期格式

标签 php mysql sql database

mySQL 中的日期格式具有类型 (yyyy-mm-dd),现在我尝试反转它 (dd-mm-yyyy)。 我有表用户

CREATE TABLE USER 
(
  USER_ID INTEGER AUTO_INCREMENT NOT NULL PRIMARY KEY,
  DOB DATE,   
);

所以当我将值插入其中时:

INSERT INTO USER(DOB) VALUES(DATE_FORMAT('13-07-1990','%d,%m,%Y));

但是,它不起作用。它注意到我应该使用 1990-07-13 而不是“13-07-1990”。 请帮助我做到这一点。谢谢。

最佳答案

日期的 ANSI SQL 标准格式为 YYYY-MM-DD HH:MM:SS。以这种格式捕获日期以插入数据库会更容易。

为了使用您正在使用的格式 (MM-DD-YYYY) 存储日期,您需要使用 STR_TO_DATE函数允许您将字符串转换为日期。该函数的语法为:

STR_TO_DATE(str, format)

格式说明符可以在 here 中找到.

对于您的 INSERT 语句,您可以使用:

INSERT INTO `user` (`dob`) VALUES
( STR_TO_DATE('13-07-1990','%d-%m-%Y') )

关于php - mySQL如何更改日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20034546/

相关文章:

sql - PostgreSQL:当 x=a 和 x=b 时如何从表中选择 2 个不同的计数

php - 在 PHP 中重置命名空间?

php - Phar 存档 : Falling back to website

php - 网站到计算机的通信

mysql - 为什么这个 MySQL 查询没有使用完整的索引?

sql - MySQL 'create schema' 和 'create database' - 有什么区别吗

php - MySQL 'field list' 中的未知列

php - MySQL - 将值插入表中的 PHP 表单?

PHP 提取变量中的每条记录以进行插入

sql - PostgreSQL:位到smallint