by ByTheGrace [Oracle 기초] Oracle sql [2019.07.03 22:00:48]
마농님이 짜신 쿼리를 보는 데 도저히 이해가 안 되어서 이렇게 질문을 드립니다ㅠㅠ
where ... LIKE '%'||bf1||'%' <<< 이 부분의 원리가 도대체 이해가 되지 않아 질문을 드립니다.
(물론 아래 쿼리 전체가 제게는 너무 버겁습니다.)
where '여러 개의 문자열' LIKE '%'||칼럼명||'%' 이렇게 해주었는데
'''어떻게 여러 개의 문자열 안에 있는 값들을 각각 일일히 비교해주는지'''
이 원리가 도저히 이해가 가지 않습니다ㅠㅠ
부디 이해할 수 있도록 설명해주실 수 있는 분 계실까요?ㅠㅠ
부디 부탁드리겠습니다, 감사드립니다.
WITH a AS
(
SELECT '01,02,03' af2 FROM dual
)
, b AS
(
SELECT '01' bf1, '간장' bf2 FROM dual
UNION ALL SELECT '02', '고추장' FROM dual
UNION ALL SELECT '03', '된장' FROM dual
UNION ALL SELECT '04', '춘장' FROM dual
)
SELECT bf2 FROM a, b WHERE af2 LIKE '%'||bf1||'%';