laravelを使用してSQLite、PostgreSQL、MySQL、およびMSSQLデータベースでJSON_EXTRACTと同じように動作するJSON_EXTRACTの有効化/使用/代替メソッドを使用したいとします。laravelを使用してSQLite、PostgreSQL、およびMSSQLデータベースでJSON_EXTRACTメソッドを有効/使用するにはどうすればよいですか?
以下のクエリはで動作しています。、table2
です。 attribute_data
はjsonデータの列です。
$query->select('table1.*');
$query->where(function ($q) use ($locale) {
$q->where(Db::raw('JSON_EXTRACT(`table2`.`attribute_data`, "$.title")'), '!=', "");
$q->where('table2.locale', '=', $locale);
});
$query->join('table2', function ($join) use ($locale) {
$join->on('table1.id', '=', 'table2.model_id');
});
エラー: SQLSTATE [HY000]:一般的なエラー:1このような機能:JSON_EXTRACT