0

我正在使用 php 和 mysql 开发一个 uni 项目。我的一些表中有日期字段,其数据类型为“日期”。日期的默认存储是 yyyy/mm/dd,但我希望它显示为 dd/mm/yyyy。我正在尝试从我的 2 个表中选择所有字段并使用 date_format 格式化字段。

我已经使用了下面的查询,但我仍然在 yyyy/mm/dd 中获得日期输出。

$query="SELECT *, DATE_FORMAT(profile.Dob, '%D %M %Y') FROM user, profile WHERE user.Username='$username' and 
user.Password='$password' and user.User_id = profile.User_id";

我还将通过用户表单将日期插入数据库。他们要经过类似的程序吗?感谢任何人都可以提供的任何帮助。

4

1 回答 1

2

日期可能会在您的查询中返回两次,因为您正在选择 *,因此 DOB 字段将在您的查询中返回两次。一次格式化,一次不格式化。

如果您必须保留SELECT *(通常是“最坏的做法”),则按如下方式修改您的查询并将该字段引用为 formattedDOB

SELECT *, DATE_FORMAT(profile.Dob, '%D %M %Y') as formattedDOB 
FROM user, profile 
WHERE user.Username='$username' and 
user.Password='$password' and user.User_id = profile.User_id
于 2012-04-23T15:34:35.617 回答