以下SQL查询工作正常:
mysql> SELECT `id`, `created`, `type`, `saved`->>"$.total" AS `total` FROM `invoices` LIMIT 20;
saved
字段是JSON数据类型,但是,当我尝试对Gridview小部件的搜索模型使用activerecord查询时:
$query = Invoices::find()->select(['id','created','type','`saved`->>"$.total" AS total']);
由于在JSON键total
周围添加了反引号,生成的SQL语句将出错
SELECT `id`, `created`, `type`, `saved`->>"$.`total"` AS `total` FROM `invoices` LIMIT 20
我已经尝试了saved
字段的几种格式,如:
一个三个三个一个
我无法管理如何让活动记录查询提供正确的SQL语句?!
1条答案
按热度按时间bq3bfh9z1#
正如llia Yatsenko所建议的那样,我使用了如下表达式,它工作得很好: