タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

structured-query-languageとoracleとmergeに関するnabinnoのブックマーク (2)

  • Android データがなければInsert、あればUpdate

    データがなければInsert、あればUpdateを行いたい時があると思います。 UPDATE と INSERT をもじって、UPSERT と呼ぶそうです。へぇ~ SELECTの結果が0件ならINSERTそれ以外はUPDATEとしてもよいのかもしれませんが これを1つのSQLで実行することができます。 Oracleでは 「MERGE」 主キーに該当するデータがあればUPDATE、なければINSERTを行います。 MERGE INTO 表名1 [エイリアス名] USING 表名2 | 副問い合わせ [エイリアス名] ON ( 結合条件 ) WHEN MATCHED THEN UPDATE SET カラム名 = 値, … WHEN NOT MATCHED THEN INSERT (カラム名, … ) VALUES ( 値, … ); MySQLでは 「REPLACE」 または 「INSERT O

  • MERGE文について

    以下のようなSQL文を作成し、Oracle10gで実行したところ、正常に実行されていたのですが、同一のSQL文をOracle9iで実行したところ、 ORA-00905: キーワードがありません。 とエラーがでてしまいました。 merge文はOracle9iから追加された?ものだったと記憶しているですが、思い違いでしょうか? それともOracle9i、Oracle10gで何か違いがあるのでしょうか? Oracleのバージョンはそれぞれ以下の通りです。 Oracle10g:10.1.0.2.0 Oracle9i:9.0.1.1.1 よろしくお願い致します。 <やりたいこと> A表のa列とb列が、B表のa列とb列と一致したものレコードのみ、B表のc列の内容にA表のc列をアップデートする。(インサートはしない) merge into 表A A using 表B B on (A.a = B.a an

    MERGE文について
  • 1