我正在尝试为网站生成动态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`