按列名排序

时间:2011-04-18 18:18:52

标签: postgresql sql-order-by

是否可以使用order by子句的实际列名称?

我正在使用一个视图让客户使用记者作家(Pentaho),这会让他们更轻松。

为了澄清,我想将结果按列名称本身的字母顺序排列。我想使用列对数据进行排序,而不是列中的数据。

4 个答案:

答案 0 :(得分:2)

如果你的意思是根据他们的名字改变列本身的顺序(只有你使用SELECT *才有意义,我猜),我担心这是不可能的,至少不是直截了当的。这听起来非常不合理,我会说......

答案 1 :(得分:1)

当然,您可以按列名,列别名或列位置进行排序:

通过b;

从表格顺序中选择a,b

从表格顺序中选择a x,b作为y x,y;

从表格顺序中选择a,b;

答案 2 :(得分:1)

在PostgreSQL中,您可以尝试:

SELECT column_name, data_type FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 
 'my_table' ORDER BY column_name;

答案 3 :(得分:0)

您可以按照您喜欢的任何顺序创建包含列的视图。然后SELECT * FROM your_view个查询将按视图指定的顺序返回列。