다음과 유사한 데이터가있는 테이블이 있습니다.부울 값이 참인 열 값을 가져오고, 그렇지 않으면 부울 값이 거짓 일 때 열 값을 가져옵니다.
다양한 플래그와 키가있는 수많은 행이있는 큰 테이블을 사용하고 있습니다. 나는 깃발이 진실 인 곳을 가장 낮게, 깃발이 틀린 곳을 가장 낮게되도록 그들을 묶어 놓았다. 참과 거짓 플래그가있는 경우
╔══════════════════╦══════╦═══════╗
║ Email ║ Flag ║ Key ║
╠══════════════════╬══════╬═══════╣
║ [email protected] ║ 1 ║ 77731 ║
║ [email protected] ║ 0 ║ 67980 ║
║ [email protected] ║ 1 ║ 64417 ║
║ [email protected] ║ 0 ║ 71733 ║
║ [email protected] ║ 1 ║ 95655 ║
║ [email protected] ║ 0 ║ 91016 ║
╚══════════════════╩══════╩═══════╝
지금, 각각 별개의 이메일, 나는 진정한 키 값을 반환합니다. 그렇지 않으면 가장 낮은 값을 반환하고 싶습니다. 나는 앞의 두 경우 문을 사용하여, 그룹의 모든 종류의 시도 절을 꾸게
╔══════════════════╦══════╦═══════╗
║ Email ║ Flag ║ Key ║
╠══════════════════╬══════╬═══════╣
║ [email protected] ║ 1 ║ 77731 ║
║ [email protected] ║ 1 ║ 64417 ║
║ [email protected] ║ 1 ║ 95655 ║
║ [email protected] ║ 0 ║ 91016 ║
╚══════════════════╩══════╩═══════╝
을하지만, 그 방법을 볼 수 없습니다 :
그래서 출력은 이상적으로 같을 것이다 .
정말 도움이된다면 전자 메일과 키만 필요합니다.
감사합니다 아주 많이. CTE는 매력처럼 일했습니다. 나는 이전에 약간 비슷한 점을 생각 했었지만, 이것과 같이 집합체가 꽤 복잡하다고 생각하지 않습니다. 나는 이미 노조와 비슷한 것을 시도해 보았지만, 테이블의 크기 때문에 조금 더 커지게되었다. 두 옵션 모두에 대해 높이 평가되었습니다! – Reisclef