Yii Postgress Json向操作员查询问号?,?|,?&

时间:2016-06-07 11:00:18

标签: php postgresql yii conditional-statements jsonb

如何将SQL查询编写到符合运算符条件的support 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);

?标记运算符替换为$ 1,即转换为绑定值。

如何在Yii中执行此类查询?

1 个答案:

答案 0 :(得分:2)

我面临同样的问题

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