【发布时间】:2014-07-06 13:24:31
【问题描述】:
我正在开发一个需要删除用户提供的数字的软件,但不幸的是,一些元素,如列名(与用户输入无关)也可以用数字表示。所以我正在寻找一个完整的参考来了解列名或(可能是表名)何时可以在查询中由 id 表示。
例如在下面的查询中这种情况成立:
select * from first group by 1,2,3;
【问题讨论】:
标签: sql postgresql identifier
我正在开发一个需要删除用户提供的数字的软件,但不幸的是,一些元素,如列名(与用户输入无关)也可以用数字表示。所以我正在寻找一个完整的参考来了解列名或(可能是表名)何时可以在查询中由 id 表示。
例如在下面的查询中这种情况成立:
select * from first group by 1,2,3;
【问题讨论】:
标签: sql postgresql identifier
对 output 列的位置引用在 SELECT 语句的 GROUP BY and ORDER BY 子句中有效。
GROUP BY子句
表达式可以是输入列名,也可以是名称或序数 输出列(SELECT 列表项)
ORDER BY子句
每个表达式可以是输出列的名称或序数 (选择列表项)
还有DISTINCT ON:
DISTINCT ON表达式使用与ORDER BY相同的规则进行解释。
例子:
【讨论】:
DISTINCT ON感兴趣。