2013-06-18 2 views
0
최고

먼저 쿼리 기록을 표시 나는 하나 개의 쿼리 결과가 내가 들어 때마다 쿼리 반환 결과 위의 오름 성으로 순서 만 과 결과를 원하는 지금 이 선택 쿼리를 병합하고

Select * from department where departmentid in (1,2) 

DepartmentID LastName 
------------ -------- 
1,2   A 
2    D 
1    C 
1    B 
1,2   Y 

아래로 lastName 열에서 데이터를 가지고 있습니다 성 Y. 꼭대기에 오르지. 그 결과 다음과 같은 우리가 SQL 쿼리를 통해 달성 할 수있는 방법

LastName 
-------- 
Y 
A 
B 
C 
D 

을 설정?

답변

1

당신은 조건부 order by으로이 작업을 수행 할 수 있습니다

order by (case when LastName = 'Y' then 1 else 0 end) desc, 
     LastName 
+0

실제로 난 항상 오름차순으로 결과를 원하지만 결과 세트가 'Y'를 포함 할 경우 결과 집합이 오름차순으로 상단과 기타 기록에 Y를 포함합니다. – Irshad

+0

@irshad. . . 그것이 바로'order by' 절이하는 것입니다. –

+0

: - 죄송합니다. Sql에서 시도하지 않았습니다. 괜찮습니다. 제게 일하고 있습니다 .. 도움을 주셔서 감사합니다 .... – Irshad

관련 문제