sql >> Database teknologi >  >> RDS >> Mysql

Spring Boot JPA:hvordan forespørger man en JSON-kolonne i en tabel

Du skal bruge indbygget forespørgsel for at bruge databasefunktioner som json_contains:

@Query("select c from CaseMessage c  where c.caseId=?1 and c.id not in(select cm.id from CaseMessage cm where json_contains(status, '{\"status\": \"delete\"}') and json_contains(status, '{\"user_id\": ?2}'))", nativeQuery = true)
    List<CaseMessageResponse> getAllCaseMessages(long caseId, long userId);

eller med @NativeQuery-annotationen

for mere information:

Forskel mellem query, native forespørgsel, navngivet forespørgsel og indtastet forespørgsel




  1. Autoincrement i oracle til allerede oprettet tabel

  2. Mysql Inkrementerende variabel ydeevne

  3. Spatial Point-funktioner ved hjælp af Laravel Eloquent ORM

  4. Symbolerne skal jeg være opmærksom på for SQL-injektion