SQL 프로그래머스

SQL(프로그래머스)_Lv.2 (Select)

티니's 2024. 8. 2. 00:24

# 3월에 태어난 여성 회원 목록 출력하기

[문제]

[정답 코드]

 

# 재구매가 일어난 상품과 회원 리스트 구하기

[문제]

[정답 코드]

 

# 특정 물고기를 잡은 총 수 구하기

[문제]

[정답 코드]

 

# 업그레이드 된 아이템 구하기

[문제]

[정답 코드]

WHERE ~ IN 
- 특정 컬럼의 값이 주어진 목록에 속하는지 확인할 때 매우 유용
- 여러 값을 한 번에 비교할 수 있음

 

# 조건에 맞는 개발자 찾기

[문제]

[정답 코드]

*비트 연산자의 결과가 0보다 큰지 비교하는 이유
ex) Python 스킬 코드가 포함된 경우
# SELECT 400 & 16;
-- 결과: 16 (110010000 & 000010000 = 000010000)

ex) C# 스킬 코드가 포함된 경우
# SELECT 400 & 256;
# -- 결과: 256 (110010000 & 100000000 = 100000000)

ex) 비트가 포함되지 않은 경우
# SELECT 400 & 1;
 -- 결과: 0 (110010000 & 000000001 = 000000000)

# 비트 연산
AND (&)
- 각 비트가 모두 1일 때만 1을 반환
- 예: 5 & 3 (즉, 0101 & 0011은 0001, 결과는 1)

OR (|)
- 하나 이상의 비트가 1이면 1을 반환
- 예: 5 | 3 (즉, 0101 | 0011은 0111, 결과는 7)

XOR (^)
- 비트가 서로 다를 때 1을 반환
- 예: 5 ^ 3 (즉, 0101 ^ 0011은 0110, 결과는 6)

NOT (~)
- 비트를 반전시킴 (0을 1로, 1을 0으로)
예: ~5 (즉, ~0101은 1010, 결과는 -6, 이는 2의 보수로 인한 결과)

Left Shift (<<)
- 모든 비트를 왼쪽으로 지정된 수만큼 이동함. 오른쪽은 0으로 채워짐
예: 5 << 1 (즉, 0101 << 1은 1010, 결과는 10)

Right Shift (>>)
- 모든 비트를 오른쪽으로 지정된 수만큼 이동함. 왼쪽은 부호 비트로 채워짐 (부호 있는 경우).
예: 5 >> 1 (즉, 0101 >> 1은 0010, 결과는 2)

 

# 부모의 형질을 모두 가지는 대장균 찾기

[문제]

[정답 코드]