2013-01-24 2 views
-7

"기본 설정"을 기반으로 테이블에서 값을 가져 오려고합니다."기본 설정"의 표 기본 값을 얻는 방법

나는 두 개의 열 "ID"와 "알파벳"

샘플 데이터

1 A 
1 B 
2 A 
3 A 
3 B 

그것은 모든 ID가 기본값 "A"가 일부는 "B 의미를 포함하여 테이블"T1 "가 ").

이제 "B"환경 설정에 따라 "id"값을 얻고 싶습니다. 따라서 ID에 A와 B가 모두있는 경우 B 행이 필요합니다. B 행이 없으면 기본값 인 A가 리턴되어야합니다.

+0

예 단일 열에 하나의 값이 있습니다 .... A 또는 B –

+0

그래서 모든 행을 원하십니까? 알파벳으로 정렬하고 싶습니까? 이 경우 알파벳으로 ORDER BY를 사용하십시오. 내가 오해하는 경우, "알파벳이 B이고 B가 B가 아닌 사람들은 모두 A 값을 얻을 수 있습니다."라는 의미를 얻지 못합니다. 추가 설명해주세요 – Melanie

+2

테이블 구조, 샘플 데이터 및 원하는 결과를 게시 할 수 있습니까? – Taryn

답변

2

mysql 사투리가 항상 나를 버리는 것처럼 약간 꺼져있을 수 있습니다. B가 알파벳 순서로 A 뒤에옵니다. ID를 그룹화하고 최대 값을 선택하면 B 행이 모두있는 행을 제공합니다. 그렇지 않으면 A 행을 가져옵니다.

SELECT 
    ID, 
    MAX(alphabet) AS preference 
FROM 
    t1 
GROUP BY 
    ID 

이제 데이터가 사용자가 제시 한 것보다 더 복잡한 경우 MAX 로직이 계속 적용되는지 검토해야합니다.

+0

hiiii billinkc .... 처음에는 내 질문을 이해하고 편집 해 주셔서 감사합니다. 두 번째로 해결해 주셔서 감사합니다 ..... 정말 그 작품은 내가 원하는 것 ..... 감사합니다. billinkc –

+0

Welcome to StackOverflow . 사이트에서 도움이되는 질문이나 답변을 찾으면 옆에있는 위 화살표를 클릭하십시오. 이 질문에 대한 대답이 있으면 대답 옆의 체크 표시를 클릭하십시오. – billinkc

+0

안녕하세요. billinkc ... 하나의 prob도 있습니다. 하나 이상의 열이있는 경우 그 값을 얻지 못하는 경우. "알파벳". 어떻게 가능할 수 있는지 말해줘. –

관련 문제