sql >> データベース >  >> RDS >> Mysql

null許容列のJSON_extract関数を使用したwhereステートメントは、その列の値がNULLの場合に確認されますか?

    これ:

    ->where(function($query) use ($other_key, $new_change) {
        $query->where(DB::raw('json_extract(old_value, "$.theme_id") = 1))
            ->orWhere(DB::raw('json_extract(new_value, "$.theme_id") = 1));
    

    あるべき:

    ->where(function($query) use ($other_key, $new_change) {
        $query->where(DB::raw("json_extract(old_value, '$.theme_id')"), 1);
            ->orWhere(DB::raw("json_extract(new_value, '$.theme_id')"), 1);
    

    これがLaravelのwhereステートメントの仕組みです。 2番目のパラメーターを挿入しなかったため、LaravelはNULLをチェックしていると想定しました。今は動作します、私の愚かさをお詫びします。




    1. 参加によるYii2QueryBuilderアップデート

    2. PL / SQLは、Oracle 11gを使用している場合に学習する言語ですか?

    3. SQLにドロップダウンせずにRails2.3でアトミックインクリメントを実行できますか?

    4. mysqlにアップロードされたときのExcelの変更からの日付