2013-10-25 98 views
0

我从可用性的基础上检索数据库中的数据,并且有些项目不再可用,并且每当显示数据时,我都希望废弃项目始终处于末尾。如何在最后显示特定的记录?

Item Name | Availability 
    item1  |  Yes 
    item2  |  No 
    item3  |  Yes 
    item4  |  Yes 

我想显示这些项目总是在最后不可用。像这样

 Item Name | Availability 
     item1  |  Yes 
     item3  |  Yes 
     item4  |  Yes 
     item2  |  No 

SQL Qry的任何帮助。

回答

2

您可以使用CASE

SELECT [Item Name], Availability 
FROM dbo.TableName 
ORDER BY CASE WHEN Availability = 'Yes' THEN 0 ELSE 1 END ASC 

Sql-Server example

0

您可以添加计算BIT科拉姆0 yes和1没有了,通过该位clolumn子句中添加以便您选择

1

按可用性递减排序(是,否)。

SELECT [Item Name], Availability 
FROM dbo.TableName 
ORDER BY Availability DESC, [Item Name] ASC 

SQL Fiddle