SQL

leetcode > 1527. Patients With a Condition

jhj.sharon 2023. 2. 6. 19:43
λ°˜μ‘ν˜•

✨ 문제: 1527. Patients With a Condition

https://leetcode.com/problems/patients-with-a-condition/solutions/?q=regexp+oracle&orderBy=most_relevant

πŸ’»μ½”λ“œ

select patient_id,
       patient_name,
       conditions
from   patients
where  regexp_like(conditions, '^DIAB1| DIAB1')

 

πŸ‘©‍πŸ’» 풀이 방법

  • 이번 문제의 경우 condition like = '%DIAB1' OR condition LIKE = '% DIABL1%'으둜 κ°„λ‹¨νžˆ ν’€ 수 μžˆλŠ” λ¬Έμ œμ΄λ‹€.
  • κ·ΈλŸ¬λ‚˜ 함정이 ν•˜λ‚˜μžˆλŠ”λ° 곡백(SPACE)이 κ΅¬λΆ„μžλ‘œ μ“°μΈλ‹€λŠ” 것을 μ£Όμ˜ν•΄μ•Όν•œλ‹€. 
  • ν•˜μ§€λ§Œ LIKE와 IN을 같이 μ“°μ§€ λͺ»ν•΄ λ°œμƒν•˜λŠ” 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•œ ν•¨μˆ˜ REGEXP_LIKEλ₯Ό μ΄μš©ν–ˆλ‹€.
  • REGEXP_LIKE(컬럼λͺ…, μ •κ·œν‘œν˜„μ‹) - ^: μ²«κΈ€μžλ‘œ μ‹œμž‘, | = λ˜λŠ”( OR)

 

 


πŸ”” λŠλ‚€μ 

  • μ •κ·œν‘œν˜„μ‹μ΄ μ΅μˆ™ν•˜μ§€ μ•Šλ‹€. μžλ°”μŠ€ν¬λ¦½νŠΈλ₯Ό 아직 곡뢀 μ•ˆν•΄μ„œ....
  • REGEXP은 μ •κ·œν‘œν˜„μ‹(REGULAR EXPRESSION)의 μ•½μžμ΄λ‹€. μ •κ·œν‘œν˜„μ‹μ€ λ¬Έμžμ—΄μ—μ„œ νŠΉμ • λ‚΄μš©μ„ μ°Ύκ±°λ‚˜ λŒ€μ²΄ λ˜λŠ” λ°œμ·Œν•˜λŠ”λ° μ‚¬μš©λ˜λŠ” μ–Έμ–΄κ·œμΉ™μ΄λ‹€.
λ°˜μ‘ν˜•