[SQL] 특정 형질을 가지는 대장균 찾기

정만·2025년 4월 14일

SQL

목록 보기
29/36

문제

예를 들어 ECOLI_DATA 테이블이 다음과 같다면

각 대장균 별 형질을 2진수로 나타내면 다음과 같습니다.
ID 1 : 1000₍₂₎
ID 2 : 1111₍₂₎
ID 3 : 1₍₂₎
ID 4 : 1101₍₂₎
각 대장균 별 보유한 형질을 다음과 같습니다.
ID 1 : 4
ID 2 : 1, 2, 3, 4
ID 3 : 1
ID 4 : 1, 3, 4
따라서 2번 형질이 없는 대장균 개체는 ID 1, ID 3, ID 4 이며 이 중 1번이나 3번 형질을 보유한 대장균 개체는 ID 3, ID 4 입니다.
따라서 결과는 다음과 같아야 합니다.

SELECT COUNT(*) AS COUNT
FROM ECOLI_DATA
WHERE GENOTYPE & 2 = 0
AND(GENOTYPE & 1 = 1 OR GENOTYPE & 4 = 4)

!!!!! 이진수 100은 4인 것을 기억하자!!!!!

profile
멋있는 어른이 되고싶은 정만이의 벨로그

0개의 댓글