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