[SQL] 어떻게 먼저 특정 값으로 행을 반환합니까?
SQL어떻게 먼저 특정 값으로 행을 반환합니까?
나는 열이 먼저 특정 값을 포함하는 테이블의 행을 반환하고 알파벳순으로 행의 나머지를 반환하는 내 쿼리를합니다.
나는이 예제 같은 테이블에 뭔가가있는 경우 :
- Table: Users
- id - name - city
- 1 George Seattle
- 2 Sam Miami
- 3 John New York
- 4 Amy New York
- 5 Eric Chicago
- 6 Nick New York
그리고 내 질문에 내가 원하는 테이블을 사용하려면 먼저 뉴욕을 포함하는 행을 반환 한 다음 행의 나머지는 도시 알파벳 순서입니다. 이것은 단지 하나의 쿼리를 사용하여이 작업을 수행 할 수 있습니까?
해결법
-
==============================
1.SQL 서버, 오라클, DB2, 그리고 다른 많은 데이터베이스 시스템에서, 이것은 당신이 사용할 수있는 것입니다 :
SQL 서버, 오라클, DB2, 그리고 다른 많은 데이터베이스 시스템에서, 이것은 당신이 사용할 수있는 것입니다 :
ORDER BY CASE WHEN city = 'New York' THEN 1 ELSE 2 END, city
-
==============================
2.당신의 SQL 언어는 숫자 값을 가진 것으로 부울 식을 치료하는 지능형 정도 인 경우에, 당신은 사용할 수 있습니다 :
당신의 SQL 언어는 숫자 값을 가진 것으로 부울 식을 치료하는 지능형 정도 인 경우에, 당신은 사용할 수 있습니다 :
SELECT * FROM `Users` ORDER BY (`city` = 'New York') DESC, `city`
-
==============================
3.내 대답이 필요 오래된되지 않을 수 있지만 사람이 따라서 여기 게시, 다른 접근 방법이 필요할 수 있습니다.
내 대답이 필요 오래된되지 않을 수 있지만 사람이 따라서 여기 게시, 다른 접근 방법이 필요할 수 있습니다.
나는 같은 요구 사항은 나를 위해 일한이 구현했다.
Select * from Users ORDER BY (CASE WHEN city = 'New York' THEN 0 ELSE 1 END), city GO
추신
이 SQL입니다
from https://stackoverflow.com/questions/1250156/how-do-i-return-rows-with-a-specific-value-first by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] MySQL의에서 관계를 만드는 방법 (0) | 2020.04.13 |
---|---|
[SQL] 어떻게 NHibernate에 단지 그것을 실행하지 않고 SQL을 생성 할 수 있습니다? (0) | 2020.04.13 |
[SQL] MySQL을 같이 여러 값 (0) | 2020.04.13 |
[SQL] MySQL의에서 기본 키를 제거 (0) | 2020.04.13 |
[SQL] SQL 또는 TSQL 튜링 완료? (0) | 2020.04.13 |