MySQL:按列对2个(或更多)表中的行进行排序

MySQL:按列对2个(或更多)表中的行进行排序,mysql,sql,Mysql,Sql,我试图按时间对不同表中的数据进行排序。。 我有桌子: 书籍: 图书编号|图书名称|图书时间 电影: 电影id |电影名称|电影时间 我想一起挑选最新的书籍和电影。我想把它分类如下:按书订购\u时间描述 但两张桌子都是。我尝试使用联接,但效果不是很好,而且速度也很慢。我通常尝试远离子查询,但如果将联合放入其中,则可以轻松地按时间排序: SELECT id, name, time FROM ( SELECT book_id id, book_name name, book_time time

我试图按时间对不同表中的数据进行排序。。 我有桌子:

书籍: 图书编号|图书名称|图书时间

电影: 电影id |电影名称|电影时间

我想一起挑选最新的书籍和电影。我想把它分类如下:按书订购\u时间描述
但两张桌子都是。我尝试使用联接,但效果不是很好,而且速度也很慢。

我通常尝试远离子查询,但如果将联合放入其中,则可以轻松地按时间排序:

SELECT id, name, time
FROM
(
    SELECT book_id id, book_name name, book_time time FROM books
    UNION
    SELECT movie_id id, movie_name name, movie_time time FROM movies
) booksandmovies
ORDER BY time DESC;

我通常尝试远离子查询,但如果将union放入其中,则可以轻松地按时间排序:

SELECT id, name, time
FROM
(
    SELECT book_id id, book_name name, book_time time FROM books
    UNION
    SELECT movie_id id, movie_name name, movie_time time FROM movies
) booksandmovies
ORDER BY time DESC;

我不明白你会怎么加入这些表格;它们没有关系。@IgnacioVazquez Abrams可能电影数据库是基于书籍的电影,电影id是书籍id的外键。虽然我怀疑不是这样…@PhpMyCoder:尤其是因为它最好用M2M表示。这只是一个例子。我的桌子上没有书/电影。加入是个坏主意,我知道:)但现在我有了答案。谢谢你们。我不明白你们会怎么加入这些桌子;它们没有关系。@IgnacioVazquez Abrams可能电影数据库是基于书籍的电影,电影id是书籍id的外键。虽然我怀疑不是这样…@PhpMyCoder:尤其是因为它最好用M2M表示。这只是一个例子。我的桌子上没有书/电影。加入是个坏主意,我知道:)但现在我有了答案。谢谢大家。+ 1:但是我会考虑使用<代码>联合所有< /C> > -它更快,因为它不删除重复(即<代码>联合< /COD>将)。当然,有些书和电影有相同的名字,但不太可能有相同的ID和时间…+ 1:但是我会考虑使用<代码>联合所有< /C> > -它更快,因为它不删除重复(即<代码>联合< /COD>将)。当然,有些书和电影有相同的名字,但不太可能有相同的ID和时间。。。