컬럼값 비교 0 4 1,662

by 이제시작이야 [Oracle 기초] 컬럼값 비교 like [2020.03.25 10:48:12]


안녕하세요. 오라클을 하던중 사소한?궁금증이 생겼는데

두개의 컬럼값이 같을때는 col1=col2로 나타내고

col1이라는 컬럼에서 'hi'라는 단어를 포함한 값을 찾을때는 col1 like '%hi%'를 쓰면 된다고 알고있는데

col1이라는 컬럼데이터중 col2에있는 데이터를 포함하고 있는(가나,다라,마바,사아 라는 단어를 포함하는)데이터들만 조회할수 있는 조건이 있을까요?

col1 like col2이런식으로 하면 동일한 데이터만 나와서 고수님들에게 여쭤봅니다^^

예)col1                        col2                        

가나군                        가나

여자가나                     다라

가나                           마바

다라군                        사아

양다라

난아냐

나도아냐

 

 

by ㅇㅇ준 [2020.03.25 10:58:55]

WITH A AS (SELECT '가나다' COL1, '가' COL2 FROM DUAL UNION ALL
           SELECT '가나다' COL1, '라' COL2 FROM DUAL )
SELECT *
FROM A
WHERE COL1 LIKE '%'||COL2||'%' ;


by 이제시작이야 [2020.03.25 11:20:48]

아하 col2컬럼의 데이터를 문자로 표현하기만하면 되는 문제였군요.

친절한 답변에 감사드립니다.

또 하나 배워가네요^^


by 마농 [2020.03.25 12:58:56]
WHERE col1 LIKE '%' || col2 || '%'
WHERE INSTR(col1, col2) > 0

 


by 이제시작이야 [2020.03.25 13:21:02]

와!

instr을써서 col1에 col2에 데이터가 포함되어있을때 익덱스값이 0이상이면 해당된다는 소리니 성립이되는군요.

같은 결과에도 역시 여러방법이 있는거 같네요. 

마농님 또한 친절한 답변에 감사드립니다.

하나 더 배워갑니다^^

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입