Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak napisać zapytanie w MySQL dla obiektów tablicy JSON

Użyłbym JSON_CONTAINS .. Sprawdź dbfiddle (mariadb_10.4)

składnia to JSON_CONTAINS(target, candidate[, path])

SELECT
    *
FROM
    `student`
WHERE
    JSON_CONTAINS(JSON_EXTRACT(`val`, '$.stdran'), '1') 
    OR JSON_EXTRACT(`val`, '$.stdran') IS NULL 
    OR JSON_EXTRACT(`val`, '$.stdran') = '[]'

I wynik dla danych wejściowych 1 to

Dla wejścia 4 jest



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. formularz php i html na tej samej stronie

  2. Zapytanie wybierające MYSQL z funkcją SUM()

  3. Uzyskaj pierwsze/ostatnie n rekordów na grupę według

  4. Jak wybrać z dynamicznej nazwy tabeli

  5. Jak dołączać punkty do LINESTRING SQL