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

別の列の値で列を更新する

    foo.aをNULLにしようとする更新には2つの理由が考えられます。

    1. fooには、barに一致する行がない行があります。
    2. バーの一致する行のbar.xがnullです。

    上記の条件のいずれかが当てはまる場合、以下はfooへの更新を除外します。そのような場合、foo.aはそのまま残ります:

    update foo 
    set a = (select distinct( x ) from bar where bar.y = foo.b )
    where exists 
      (select *
      from bar 
      where bar.y = foo.b
      and bar.x is not null);
    


    1. MySQLのユーザー'user'@'localhost'のアクセスが拒否されました

    2. 次回営業している時間を見つけましょう。 mysql時間の計算

    3. パッケージにはすでに50回のトーストが掲載されています。これ以上表示されない

    4. クエリのようなmysqlは数字を除外します