Есть рабочий SQL запрос:
SELECT * FROM "user" WHERE "roles"::text = '["ROLE_COURIER"]';
Нужно составить его на QueryBuilder.
Если написать так:
$role = '["ROLE_COURIER"]';
return $this->createQueryBuilder('user')
->where('user.roles = :role')
->setParameter('role', $role)
->getQuery()
->getResult()
;
Выдает ошибку:
SQLSTATE[42883]: Undefined function: 7 ERROR: operator does not exist: json = unknown
Если написать так:
$role = '["ROLE_COURIER"]';
return $this->createQueryBuilder('user')
->where('"roles"::text = :role')
->setParameter('role', $role)
->getQuery()
->getResult()
;
Выдает ошибку:
[Syntax Error] line 0, col 44: Error: Expected Literal, got '"'
Не могу разобраться - так как правильно составить запрос с условием по полю json?