0
SQL 테이블 주문에 대한 질문이 있습니다. 그리고 나는 스택이나 구글에서 해결책을 찾을 수 없다. 내 테이블 "점수"는 다음과 같습니다 :COALESCE를 결합한 2 열로 주문하는 방법은 무엇입니까?
Name Total Tries Game1 Game2 Game3
------------------------------------------
Sam 65 61 10 31 24
Tom 55 11 30
Jim 65 58 9 34 22
Dan 62 52 10 30 22
참고 : "전체"열은 COUNT (게임 1 + 게임 2 + 게임 3)입니다.
Tom이 Game2를 재생하지 않았기 때문에 Tom의 Total 레코드가 비어 있습니다.
내가 (가장 높은 우선 순위가 가장 낮은) 다음과 같이 내 테이블을 주문하려는 :
- 빈 세포 (테이블의 맨 아래)
- 총 (ASC)
- 시도 횟수 (ASC)
Name Total Tries Game1 Game2 Game3
------------------------------------------
Dan 62 52 10 30 22
Jim 65 58 9 34 22
Sam 65 61 10 31 24
Tom 55 11 30
:
그래서 내 테이블과 같이한다
어떤 SQL 쿼리를 사용해야합니까?
이 나는이 순간에 어떤이지만, 정렬에하지 않습니다는 "시도"
SELECT name, Game1+Game2+Game3 AS Total, Game1, Game2, Game3, Tries
FROM Score
ORDER BY CASE WHEN Tries or Game1 or Game2 or Game3 IS NULL THEN 0 ELSE 1 END DESC,
COALESCE(Game1,0) + COALESCE(Game2,1) + COALESCE(Game3,2) ASC
감사를 지시됩니다 시도, 그것을 작동합니다! – Maarten