프로그래머스 SELECT 29. 특정 형질을 가지는 대장균 찾기
1. 문제 설명

2. 문제

3. 예시

4. 문제 풀이
SELECT COUNT(ID) AS COUNT
FROM ECOLI_DATA
WHERE BIN(GENOTYPE) & 2 = 0 AND (BIN(GENOTYPE) & 4 > 0 OR BIN(GENOTYPE) & 1 > 0);
- 1 Line : 대장균의 개수를 조회
- SELECT COUNT(ID) AS COUNT
- 2 Line : ECOLI_DATA 테이블에서 조회
- FROM ECOLI_DATA
- 3 Line : 대장균의 2번 형질 (0010)이 없고, 대장균의 1번 또는 3번 형질이 있는 (0001 | 0100 | 0101) 대장균만 조회
- 2를 비트 연산했을 때 0이고, 4 또는 1을 비트 연산했을 때 0 이상이 나오면 됨
- WHERE BIN(GENOTYPE) & 2 = 0 AND (BIN(GENOTYPE) & 4 > 0 OR BIN(GENOTYPE) & 1 > 0);
5. 결과 확인



Solution
- BIN() 함수
Share article