알고리즘/SQL
[프로그래머스] 부모의 형질을 모두 가지는 대장균 찾기
Noaahhh
2024. 9. 20. 23:12
Question
부모의 형질을 모두 보유한 대장균의 ID(ID), 대장균의 형질(GENOTYPE), 부모 대장균의 형질(PARENT_GENOTYPE)을 출력하는 SQL 문을 작성해주세요. 이때 결과는 ID에 대해 오름차순 정렬해주세요.
Pseudocode
- 선택할 열 지정:
- ecoli_data 테이블의 id와 genotype을 b에서 가져옵니다.
- ecoli_data 테이블의 genotype을 a에서 가져와 parent_genotype이라는 별칭을 부여합니다.
- 테이블 조인:
- ecoli_data 테이블을 두 번 사용하여, 하나는 부모(a), 다른 하나는 자식(b)으로 설정합니다.
- 부모와 자식을 parent_id를 기준으로 조인합니다.
- 조건 설정:
- a.genotype와 b.genotype의 비트 연산 결과가 a.genotype과 같도록 조건을 설정합니다.
Code
SELECT b.id, b.genotype, a.genotype parent_genotype
FROM ecoli_data a
JOIN ecoli_data b
ON a.id = b.parent_id AND a.genotype & b.GENOTYPE = a.GENOTYPE