밤사이 계속 고민을 하다가 도저히 답이 안나와서 이곳에 포스팅합니다.
테이블은 다음과 같습니다.
f1 | f2 | f3
/////+/////+/////
abc | def | ghi
dhi | def | bca
ghi | cab | def
bac | ghi | def
원하는 결과: 이 테이블(t)에서 어떤 필드에라도 a 라는 글자가 들어가는
레코드를 찾는데, 그 결과를 f1, f2, f3 필드 우선 순위로 나열하는 것입니다.
즉,
abc | def | ghi
bac | ghi | def
ghi | cab | def
dhi | def | bca
이런 결과가 나와야겠지요.
select * from t
where f1 like '%a%'
or f2 like '%a%'
or f3 like '%a%'
order by f1
이 쿼리로는 안되는군요. /./
db 쿼리로 이 문제를 해결할 수 있지 않을까요?
|