[SQL] LeetCode 1527. Patients With a Condition

LeetCode 1527. Patients With a Condition 문제를 파헤쳐보자 :)

Jun 3, 2024
[SQL] LeetCode 1527. Patients With a Condition

1. 문제 설명

1-1. 테이블 설명

1-1-1. Patients 테이블

notion image
✔️ patient_idPatients의 기본 키입니다.
✔️ conditions에 공백으로 구분된 0개 이상의 코드가 포함되어 있습니다.
 

1-2. 문제 설명

제1형 당뇨병 환자의 patient_id, patient_nameconditions을 찾는 솔루션을 작성합니다. (제1형 당뇨병은 항상 DIBA1 접두사로 시작합니다.)

2. 문제 풀이

2-1. 최종 풀이

SELECT * FROM Patients WHERE conditions LIKE 'DIAB1%' OR conditions LIKE '% DIAB1%';

2-2. 단계별 풀이

2-2-1. 조건 확인하기

WHERE conditions LIKE 'DIAB1%' OR conditions LIKE '% DIAB1%'
notion image
해당 WHERE 절은, ‘DIAB1%’ 또는 ‘% DIAB1%’에 대해서만 실행된다.
  1. ‘DIAB1%’을 쓰는 이유
      • DIAB100 MY0P
      • DIAB201
  1. ‘% DIAB1%’을 쓰는 이유
      • ‘ACNE DIAB100’
      → 공백 꼭 표시해 줘야 함! 문자열 사이에 공백이 있기 때문에, 공백을 표시해 주지 않으면 오류 남!
 

2-2-2. 최종 풀이

SELECT * FROM Patients WHERE conditions LIKE 'DIAB1%' OR conditions LIKE '% DIAB1%';
해당 코드를 실행시키면, Patients 테이블의 conditions의 ‘DIAB1%’ 또는 ‘% DIAB1%’를 가진 문자열에 대해서만 모든 행을 반환한다.