我在 postgresql 中排序有问题。信息必须按照第一列降序排序,但如果出现平局,信息必须按照第二列升序排序。
我怎样才能做到这一点?
SELECT ... ORDER BY col1 DESC, col2 ASC
select *
from t
order by c1 desc, c2 asc
当然。
http://www.postgresql.org/docs/9.2/static/sql-select.html#SQL-ORDERBY
ORDER BY 子句使结果行根据指定的表达式进行排序。如果根据最左边的表达式,两行相等,则根据下一个表达式进行比较,依此类推。
然后
可以选择在 ORDER BY 子句中的任何表达式之后添加关键字 ASC(升序)或 DESC(降序) 。
多一个:
请注意,排序选项仅适用于它们遵循的表达式;例如 ORDER BY x, y DESC 与 ORDER BY x DESC, y DESC 的含义不同。
强调,我自己的。