Как написать SQL-запросы для поддержки JSON, где условия соответствуют операторам? ,? |,? &.
id : 12, name: 'Harry Pottor', type: ['Fiction', 'Horror', 'Adventure' ]
В Yii, когда я пишу запрос для проверки массива JSON с помощью оператора ?&
дает мне ошибку. Этот запрос выполняется успешно в pgAdmin
SELECT id, name FROM books WHERE type ?& array['Fiction', 'Horror'] $commandSql = $connection->createCommand($sql);
Но ?
mark заменяется на $ 1, т. е. на значение привязки.
Как сделать этот тип запросов в Yii?
У меня такая же проблема
SELECT * FROM company WHERE jsonb_exists_all(technology::jsonb, array['ERP']);
или
SELECT * FROM company WHERE jsonb_exists_all(technology, array['ERP']);
ссылайтесь на эту ссылку http://www.scriptscoop2.com/t/984beb7bce86/postgresql-json-select-query-replacement-in-php-yii2.html