使用mysql连接两个表并按日期排序

使用mysql连接两个表并按日期排序,mysql,union,Mysql,Union,我已经研究了很多解决这个问题的方法,但我仍然无法让它发挥作用 SELECT Year FROM (SELECT DISTINCT YEAR(detDate1) AS Year FROM growl_details WHERE publish = 'y' AND pubNews = 'y' UNION SELECT DISTINCT YEAR(detDate1) AS Year FROM growl_pl_details WHERE publish = 'y' AND pubNews = '

我已经研究了很多解决这个问题的方法,但我仍然无法让它发挥作用

SELECT Year FROM (SELECT DISTINCT YEAR(detDate1) AS Year 
FROM growl_details WHERE publish = 'y' AND pubNews = 'y' 
UNION 
SELECT DISTINCT YEAR(detDate1) AS Year FROM growl_pl_details
WHERE publish = 'y' AND pubNews = 'y') AS t ORDER BY 'Year' ASC
我有两个表,growl_details和growl_pl_details,我试图让它们只显示信息存在的年份,然后将使用它们创建一个表,其中包含与该年份相关的数据页的链接

很明显,我想按顺序显示年份,但上面的代码似乎对它们进行了单独的排序,并且它们相互之间也进行了排序

有什么想法吗?

您的查询(格式化后我可以阅读):

该问题是由于
order by
子句引起的。尝试将单引号更改为反引号:

ORDER BY `Year` ASC;

单引号用于字符串常量。后面的引号围绕着事物的名称。因此,您最初的查询是按常量排序的——这会生成任意排序。

Gordon,非常感谢您的帮助。这让我很沮丧,我忽略了显而易见的事实。我需要时不时地休息一下,集中精神。
ORDER BY `Year` ASC;