SQL查询ORDER BY列值

时间:2011-06-24 09:09:08

标签: sql

我有一个列可以取0到100之间的任何值。

现在我的TYPE1类型可以取值2,4,16

TYPE2,取值8,12,64。

现在我想先按TYPE1值对列进行排序,然后再按TYPE2值排序。有没有办法做到这一点。

我的专栏只有这些值。它不知道Type1或Type2。我正在使用SQL2005

注意:TYPE1和TYPE2不是列。它们只是逻辑实体。

4 个答案:

答案 0 :(得分:3)

您可以在ORDER BY caluse:

中指定两列
SELECT * FROM yourTable ORDER BY Type1, Type2

默认情况下,这将按升序对字段进行排序。如果您想反向订购,可以在列名后面使用DESC关键字。

答案 1 :(得分:2)

什么是TYPE1和TYPE2以及您的数据库是什么? 在MySQL中,您可以ORDER BY FIELD(columnnane, 2,4,16,8,12,64)

答案 2 :(得分:0)

您可以将多个字段添加到Order By Clause

select type1, type2 from table order by type1, type2

答案 3 :(得分:0)

SELECT *
FROM table
ORDER BY type1, type2 -- the columns you want to sort in order