Bạn phải sử dụng truy vấn gốc để sử dụng các hàm cơ sở dữ liệu như 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);
hoặc với chú thích @NativeQuery
để biết thêm thông tin:
Sự khác biệt giữa truy vấn, gốc truy vấn, truy vấn được đặt tên và truy vấn đã nhập