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

MySQL ON DUPLICATE KEY-最後の挿入ID?

    このページをチェックしてください: https://web。 archive.org/web/20150329004325/https://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html
    ページの下部で、MySQL関数に式を渡すことでLAST_INSERT_IDを更新に対して意味のあるものにする方法を説明しています。

    MySQLドキュメントの例から:

    テーブルにAUTO_INCREMENT列が含まれていて、INSERT ... UPDATEが行を挿入する場合、LAST_INSERT_ID()関数はAUTO_INCREMENT値を返します。ステートメントが代わりに行を更新する場合、LAST_INSERT_ID()は意味がありません。ただし、LAST_INSERT_ID(expr)を使用してこれを回避できます。 idがAUTO_INCREMENT列であるとします。 LAST_INSERT_ID()を更新にとって意味のあるものにするには、次のように行を挿入します。

    INSERT INTO table (a,b,c) VALUES (1,2,3)
      ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id), c=3;
    


    1. 行からコンマ区切りの文字列を取得します

    2. Django:プロジェクトをsqliteからPostgreSQLに移行するためのベストプラクティスは何ですか

    3. VBNetを使用してSQLServerにデータを挿入するにはどうすればよいですか

    4. PostgreSQLデータベースを復元する際の特権の問題を解決する方法