본문 바로가기
MySql

MySQL에서 JSON 값이 비어 있는지 확인 하시겠습니까?

by 베이스 공부 2020. 10. 17.
반응형

야구 투수를 추적하는 테이블을 상상해보십시오.

     +------------+--------------------+-------+
     | id | name               | secondary_pitch |
     +------------+--------------------+-------+
     | 13 | Chris Sale         | ['Curveball','Slider'] |
     | 14 | Justin Verlander   | ['Fastball','Changeup'] |
     | 15 | CC Sabathia        | ['Fastball','Curveball'] |
     | 16 | Sonny Grey         |    ['Slider'] |
     | 17 | Aldoris Chapman    |    [] |
     +------------+--------------------+-------+

secondary_pitch 열에는 JSON 값이 있습니다. 따라서 Chapman과 같은 투수에게 보조 피치가 없으면 null을 반환하지 않고 대신 빈 JSON 문자열 ( '[]')을 반환합니다.

그러면 보조 투구가없는 투수 수를 어떻게 알 수 있나요?

난 못해 ...

  select count(*) from pitchers where secondary_pitch is null

 

해결 방법

 

secondary_pitch가 (null) 또는 ''(빈 문자열)인지 확인합니다.

SELECT count(*) from pitchers WHERE secondary_pitch IS NULL OR secondary_pitch = '';

또한 이렇게 사용할 수 있습니다.

SELECT count(*) from pitchers WHERE secondary_pitch LIKE '%[]%'

 

참조 페이지 https://stackoverflow.com/questions/51114731

 

 

반응형

댓글