푸념글이니,,, 참고하지 않으시는 걸 추천드립니다..
https://school.programmers.co.kr/learn/courses/30/lessons/276034
SELECT ID, EMAIL, FIRST_NAME, LAST_NAME
FROM DEVELOPERS D
WHERE 1=1
AND EXISTS(SELECT 1
FROM SKILLCODES S
WHERE NAME IN ('Python','C#')
AND S.CODE & D.SKILL_CODE = S.CODE)
ORDER BY ID;
비트 연산을 이용했다.
그리고 exists를 사용한다!
exists를 여기서 처음봤는데, 너무 헷갈린다.
S.CODE & D.SKILL_CODE = S.CODE
와 같이 사용하면 모든 S.CODE와 D.SKILL_CODE에 대해 조합(Combination)으로 실행되는 건가??
나중에 한 번 더 보자!!!!
그리고 저 비트 연산을 이용한 덧셈 여부는 2의 제곱의 합에서만 적용되는 건지도 궁금하다.
SELECT * FROM customers
WHERE EXISTS (
SELECT *
FROM orders
WHERE orders.c_id = customers.c_id
);
출처: Inpa Dev 👨💻:티스토리
이건 exists 찾아보다가 본 코드인데, 저기서 orders.c_id = customers.c_id
도 그럼 모든 조합에 대해 확인하고 맞는 orders 데이터에 대해 customers에서 조회????이게 뭔소리야
그니까 모든 조합에 대해 확인하고 저 조건에 맞는 c_id를 갖는 데이터만을 customers에서 조회하는건가??