SQLite按日期顺序排列

时间:2019-04-25 09:34:54

标签: mysql sql database sqlite

我有一个表,其中包含条目,另一个表中包含这些条目的已保存/收藏夹的ID。

我想获取其ID列在收藏夹中的条目,并按收藏夹表中的add_date对其进行排序。

SELECT * FROM entries WHERE id IN (SELECT favorite_id FROM favorites ORDER BY date_added)

此查询确实获得了正确的条目,但是没有正确地对它们进行排序。

如何在entries列中订购favorites.added_date

2 个答案:

答案 0 :(得分:2)

根据您的情况,您也可以将JOINORDER BY一起使用。

SELECT E.* 
FROM entries E
JOIN favorites F ON F.favorite_id = E.id
ORDER BY F.date_added ASC

答案 1 :(得分:1)

子查询的In子句等于内部联接..但(通常)更快 并且如果IN子句中的子查询的排序依据没有意义,则内部联接允许您排序结果

SELECT * 
FROM entries e
INNER JOIN favorites f  ON e.id = f.favorite_id 
order by f.date_added