Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用多个表格式化mysql查询中的日期_Php_Mysql_Sql - Fatal编程技术网

Php 使用多个表格式化mysql查询中的日期

Php 使用多个表格式化mysql查询中的日期,php,mysql,sql,Php,Mysql,Sql,我有一个sql查询,用于显示网站的新闻部分 我非常希望日期显示为“2012年1月2日”,但由于我从5个表中选择了所有字段,我不知道将格式要求放在哪里(我没有选择单个字段) 我的问题如下: $query_newsheadlines = " SELECT * FROM NewsArticles, NewsArticleCategories, NewsArticlePhotos, NewsCategories, NewsPhotos WHERE NewsArticles

我有一个sql查询,用于显示网站的新闻部分

我非常希望日期显示为“2012年1月2日”,但由于我从5个表中选择了所有字段,我不知道将格式要求放在哪里(我没有选择单个字段)

我的问题如下:

$query_newsheadlines = "
SELECT *
FROM 
  NewsArticles, 
  NewsArticleCategories, 
  NewsArticlePhotos,
  NewsCategories, 
  NewsPhotos
WHERE
  NewsArticles.id = NewsArticleCategories.newsArticleID 
  AND NewsArticles.id = NewsArticlePhotos.newsArticleID
  AND NewsArticlePhotos.newsPhotoID = NewsPhotos.id
  AND NewsArticleCategories.newsCategoryID = NewsCategories.id
  AND NewsCategories.SectionID = 201
ORDER BY NewsArticles.publishDate DESC"; 
如有任何想法,将不胜感激:)


更新“我的日期”所在的列是新闻文章。publishDate

您需要指定要格式化的列(只是不要懒于指定列)。使用
DATE\u格式

SELECT DATE_FORMAT(CURDATE(),'%D %M, %Y')
其他来源


我在格式化后的
201之后看到一个错误的备用逗号。
在哪个表中有日期列?通常在生产代码中选择*不是一个好主意,尤其是在联接查询中。即使您正在从大量的表中提取大量的COL,建议您单独列出它们,并在名称冲突的地方给它们起别名。也就是说,您可以将
SELECT*,DATE\u格式(datecol,'%D%M,%Y')作为格式化日期从…..
将其列在
*
之后。它复制了
*
中已经列出的日期列。我尝试了这个想法,尽管它看起来应该不起作用。我不使用*来偷懒-我正在尝试减少页面上的代码量。我需要大约50列,因此使用起来更加简洁*。