sql >> Databáze >  >> RDS >> Mysql

Můj příkaz where s funkcí JSON_extract ve sloupci s možnou hodnotou Null je potvrzen, když je hodnota uvedeného sloupce NULL?

Toto:

->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));

Mělo by být:

->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);

Tak fungují prohlášení v Laravelu. Nevložil jsem druhý parametr, a proto Laravel předpokládal, že kontrolujem NULL. Už to funguje, omlouvám se za mou hloupost.




  1. Hodnoty Postgres ORDER BY v seznamu IN pomocí Rails Active Record

  2. Jak mohu každý rok automaticky resetovat hodnotu sekvence na 0 v Oracle 10g?

  3. Přístup k XAMPP mysql přes Python

  4. Jak nastavit výchozí řádek pro dotaz, který nevrací žádné řádky?