微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用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`

原文地址:https://www.jb51.cc/mysql/432968.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐