使用mySQL,如何在几个不同的表中按日期排序?

前端之家收集整理的这篇文章主要介绍了使用mySQL,如何在几个不同的表中按日期排序?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在尝试为网站生成动态RSS提要,但我在编写mySQL查询时遇到了麻烦.我有几个单独的表包含我需要访问的数据,我想按日期排序所有这些数据.

作为样本表:

Chapters
release ChapterTitle ChapterContent  ExtraInfo
10/12 'Chapter 1'  'Bla bla bla'  StoryTitle
10/14 'Chapter 2'  'Bla bla bla'  StoryTitle
10/16 'Chapter 3'  'Bla bla bla'  StoryTitle
10/18 'Chapter 4'  'Bla bla bla'  StoryTitle

NewsFeed
DATETIME Title Article
10/11 'Website Online!'  'I now have my website!'
10/15 'Everything Working!'  'Everything is going well!'

我希望排序按以下顺序返回:

Website Online  Text
Chapter 1 StoryTitle  Text
Chapter 2 Story Title  Text
Everything Working  Text
Chapter 3 Story Title  Text
Chapter 4 Story Title  Text

我猜测需要某种完全连接(事实上,时间以不同的格式会让生活变得困难),但这就是我所得到的.

有任何想法吗?

编辑:工会的想法是好的,但我忘了提到我需要检索的其他信息,两者之间不能相同 – 他们需要稍微不同的处理,我需要检测到(很容易检测到检查我知道在一个表中需要的信息,如果值为null,那么它是另一种类型的条目).

编辑编辑:这是我对相应代码的最佳猜测,但数据库返回一个空表,我不知道为什么.左连接返回信息的一半,右连接返回另一半,如果我使用完全连接,我应该得到所有的,而不是没有.

select *
from chapter
full join newsFeed
on releaseDate=newsFeed.release
limit 0,100
最佳答案
SELECT ChapterTitle AS Title,release AS `date` 
  FROM Chapters AS sq
UNION ALL
SELECT Title,`DATETIME` 
  FROM NewsFeed
ORDER BY `date`

猜你在找的MySQL相关文章