我想基于另一个查询来排序结果。这里是我的查询:如何使用带有ORDER BY子句的查询结果?
"SELECT * FROM red_table INNER JOIN blue_table ON red_table.ID = blue_table.ID";
我想使用来自另一个查询结果添加ORDER BY
:
"SELECT date FROM blue_table WHERE status = 'ready'";
所以最终会是这样的:
"SELECT * FROM red_table INNER JOIN blue_table ON red_table.ID = blue_table.ID ORDERY BY (SELECT date FROM blue_table WHERE status = 'ready')";
我如何去做?或者可能吗?
UPDATE: 我知道我可以只使用ORDER BY blue_table.date
但date
列包含不日期值。 blue_table
是一种元数据表。所以我需要将date
列中的值与status
列进行匹配,因此我只获取日期值并将其用于排序。也许我不应该把它称为栏date
,但我希望你明白我的观点。
如果status = ready,您想按日期排序?如果它不准备好呢? – 2013-02-21 00:13:29
WHERE并不意味着任何顺序。你能更好地解释你实际上想要做什么吗? – 2013-02-21 00:16:16
@ExplosionPills是的。那么有状态!= ready的记录应该不包括在内。 – adredx 2013-02-21 00:17:17