先显示真,后显示假



在SQL表中,我有记录。其中一些有FLAG Y/N。现在,当我运行查询时,我想先显示所有的Y值,然后显示n

表细节

StuID……StuFlag

1 ....N

2 ....N

3 ....Y

4 ....N

5 ....Y

现在,当我执行查询时,输出应该是:

3 ....Y

5 ....Y

1 ....N

2 ....N

4 ....N

干净的方法是:

CREATE TABLE table1 (
stuid  INTEGER NOT NULL ...
, stuflag BIT
, [.. OTHER COLUMNS .. ]
);
INSERT INTO table1 VALUES (42,TRUE);
INSERT INTO table1 VALUES (42,FALSE);
SELECT * FROM table1 ORDER BY stuflag DESC;
-- FALSE is less than TRUE ...
select StuID, StuFlag from table order by StuFlag desc

有关详细信息,请参考SQL ORDER BY Keyword

最新更新