按列号排序(而不是名称)

你可以使用列的编号(最左边的列为 1)来指示基于排序的列,而不是按名称描述列。

Pro: 如果你认为以后可能会更改列名,那么这样做不会破坏此代码。

Con: 这通常会降低查询的可读性(它立即清楚’ORDER BY Reputation’意味着什么,而’ORDER BY 14’需要一些计数,可能是用手指在屏幕上。)

此查询根据 select 语句的相对列位置 3 中的信息而不是列名称 Reputation 对结果进行排序。

SELECT DisplayName, JoinDate, Reputation
FROM Users
ORDER BY 3
显示名称 JoinDate 声誉
社区 2008-09-15 1
Jarrod Dixon 2008-10-03 11739
杰夫达尔加斯 2008-10-03 12567
乔尔斯波尔斯基 2008-09-16 25784
杰夫阿特伍德 2008-09-16 37628