에 의해 결정되는 필드를 사용하여 특정 순서에 의해 주문하는 I가 다음 쿼리 (질문에 대한 단순화 된 버전)방법 case 문
내가 (WN을 특정 순서로 결과를 정렬 할select case when pool_type in ('WN','PL','SH','EX','QN')
then pool_type else 'Other' end as pooltype,
sum(wagered)
from wageringactivitytable
group by case when pool_type in ('WN','PL','SH','EX','QN')
then pool_type else 'Other' end
, PL, SH, EX, QN, 기타) SQL 쿼리를 작성한 방법을 고려할 때 이것이 가능한 것입니까?
또 다른 case 문을 사용하여 시도했는데 ('WN'의 경우 'case'pool_type, '2'등의 'PL'의 경우 1), pool_type이 order by 절에서 올바르지 않기 때문에 작동하지 않습니다. 이 .... agregate 함수 나 GROUP BY 절에 포함되지 않습니다 둘 때문에
가 나는 이름입니다보다는 열 위치로 다스 려 시도하지만,이 경우 순서는 완전히 .. 무시
case 1 when 'WN' then 1
when 'PL'then 2
....
when 'Other' then 6
end
이 옵션에 대해 생각했습니다. 나는이 일을 끝낼지도 모른다. (어떤 경우에 나는 대답을 수락 할 것이다) – MrVimes
@MrVimes - 옵션 2를 보라! : D – Hogan
감사합니다. 나는 옵션 2를 보았습니다. 즉각적인 목적을 위해 옵션 1을 사용했지만, 유지 보수가 용이하도록 옵션 2로 변경하는 것을 고려할 것입니다. – MrVimes