데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
SQLER를 통해서 많은 정보를 얻고 매우 큰 도움이 되고 있습니다. 감사하다는 이야기를 먼저 하고 싶네요.
특정 조건들을 만족시키는 데이터를 추리고 싶은데 어떻게 하면 좋을지 모르겠어서 질문글을 올려 봅니다.
날자 이름 변수1 변수2 변수3 변수4 변수5 등수
위와 같은 구조로 구성된 데이터가 있습니다.
이런 상황에서
1) 등수가 1, 2, 3, 4, 5 안에 들었던 적이 있는 사람(1-5등중 한번이라도 만족하는) 의 데이터만 선택을 하려고 합니다.
2) 1,2,3,4,5 등을 적어도 한번씩 해 보았던 사람들의 데이터를 선택하고자 합니다.
MSSQL 2008 을 사용중인데 어떻게 해야하면 좋을지 몰라서 우선 수작업으로 하고 있습니다....;;
뭔가 더 스마트하고 간단한 방법이 있을 것 같아서 질문 글 올려 봅니다 ㅠㅠ
Comment 4
-
건우아빠
2013.06.05 17:03
-
Kaorw
2013.06.06 13:43
건우아빠님 매우 감사합니다.
지속적으로 처리해야 하는 자료는 아닌지라 select해서 테이블 만들고 반복해서 하고 있습니다 :)
검색해보면서 하는데 between 1 to 5 는 안되고 between 1 and 5 는 되고 그러네요; ㅎㅎ
또 해보다가 검색하고 해결 못하면 질문드리겠습니다. 답변 감사합니다.
-
건우아빠
2013.06.06 23:14
for문 작성 하다가.... to 로 써버렸네요....
-
Kaorw
2013.06.07 00:31
아! 그런거군요.
전 또 Sql버전마다 명령어가 다르다거나 그런건줄 알았습니다. 다행이네요 ^^
select distinct 이름
from 테이블
where 등수 between 1 TO 5
select 이름
from (
select 이름 , 등수
from 테이블
where 등수 between 1 TO 5
group by 이름 , 등수
)
group by 이름
having COUNT(*) = 5
각 쿼리를 in 이나 join을로 묶어 주시면 될듯 합니다.
넘 스마트 하신걸 찾으시면 힘들어집니다.
일단 나오게 그러고 스마트 한걸 찾으시면 편합니다.
답글도 스마트한 답글을 원하시면 잘 안달립니다.