Tags
- 백트래킹
- count
- outer join
- distinct
- DB
- 스택
- N:1
- ORM
- 큐
- 완전검색
- 이진트리
- 통계학
- delete
- regexp
- stack
- 뷰
- drf
- Queue
- update
- migrations
- create
- SQL
- Vue
- M:N
- Django
- Article & User
- 그리디
- 쟝고
- Tree
- 트리
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Notice
Recent Posts
Link
데이터 분석 기술 블로그
특정 형질을 가지는 대장균 찾기 _ Lv1. 프로그래머스 본문
Solution
SELECT COUNT(*) AS COUNT
FROM ECOLI_DATA
WHERE (GENOTYPE & 2) = 0
AND ((GENOTYPE & 1) != 0 OR (GENOTYPE & 4) != 0);
이 문제는 비트 관련된 문제이다. 2진수로 바꾸었을 때 오른쪽부터 첫 번째 자리가 1이면 1번 형질을 가지고 있는 것이고, 0이면 1번 형질이 없는 것이다. 비트 문제를 풀기 위해 비트 AND 연산자를 사용했다. 두 수의 비트값을 비교해서 모두 1인 경우에만 1을 반환하는 연산이다. 그렇기 때문에 3번 형질이 있는지 없는지를 확인하기 위해서는 3이 아니라 2의 제곱인 4와 비트값을 비교해야 한다.
또 SELECT COUNT(*)만 사용하면 결과 테이블 열 이름에 COUNT(*)이라고 나온다. 이것은 원하는 결과가 아니므로 'AS'를 붙여서 원하는 열 이름이 나오도록 한다.
'SQL > 문제풀이' 카테고리의 다른 글
Revising the Select Query II _ Easy. HackerRank (0) | 2024.08.14 |
---|---|
일부 데이터 조회하기 _ Lv1 (0) | 2024.08.13 |
Recyclable and Low Fat Products _ Easy. leetcode (0) | 2024.08.11 |
Revising the Select Query I _ Easy. HackerRank (0) | 2024.08.10 |
모든 데이터 조회하기 _ Lv1 (0) | 2024.08.09 |