안녕하세요!
모두 주말 잘 보내고 계신가요?
날씨가 따뜻해지다가 비오면서 다시 쌀쌀해졌네요 . 모두 감기 조심하시기 바랍니다.
질문입니다..
아래와 같은 데이터가 있습니다.
테이블 명 : animal
이름(문자열) | 코드(문자열) |
쥐 | 1 |
소 | 2 |
호랑이 | 3 |
토끼 | 1,2,3 |
위와 같은 데이터에서 원하는 코드를 복수(1~3개) 선택하여 그 코드가 있는 데이터를 조회하고자 합니다.
select * from animal
where 코드 like '%2%'
or 코드 like '%3%'
혹은
select * from animal
where 코드 in (2,3)
두 쿼리중에 위 like를 쓰는 쿼리는 소스특성상 쿼리 or절을 동적으로 추가하지 못하여 아래 in을 사용하여 조회를 하려고 합니다.
위의 내용같이 프로그램을 만들었는데
in 조건으로 2나 3을 각각 하나씩 넣어보면 해당 코드를 딱 하나씩만 가진 데이터가 조회되고 (위 테이블 표에서 소, 호랑이가 나오며 토끼는 표시가 안됨)
1을 넣으면 복수로 선택한 쥐와 토끼까지 선택이됩니다.
in검색을 위와 같이 사용이 불가능한가요?
복수로 조건을 넣을 경우 앞자리만 비교를 하는건지...
체크한 코드가 포함되어있으면 데이터가 다 나오도록 (위 표에서 1이나 2나 3 하나씩만 체크하더라도 토끼가 표시되도록) 할 수 있는 방법이 있을까요?
가능하다면 도움 부탁드립니다..