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

同じ一意のIDを持つ複数の行を挿入します

    私があなたの質問を正しく理解した場合、あなたはIDを提供したいと思います INSERTの特定のグループ ステートメント。

    このスキーマがあると仮定します

    CREATE TABLE TableName
    (
        RecordID INT AUTO_INCREMENT PRIMARY KEY,
        OtherColumn VARCHAR(25) NOT NULL,
        GroupID INT NOT NULL
    )
    

    これには2つのステートメントがあります:

    1.)最後のGroupIDを取得する 1ずつインクリメントします 。

    SELECT COALESCE(MAX(GroupID), 0) + 1 AS newGroupID FROM TableName
    

    2.)実行したら、値を変数に格納します。この変数をすべての挿入ステートメントに使用します

    $groupID = row['newGroupID'];
    $insert1 = "INSERT INTO TableName(OtherColumn, GroupID) VALUES ('a', $groupID)";
    $insert2 = "INSERT INTO TableName(OtherColumn, GroupID) VALUES ('b', $groupID)";
    $insert3 = "INSERT INTO TableName(OtherColumn, GroupID) VALUES ('c', $groupID)";
    

    アップデート1




    1. HashMapのMyBatisパラメーター

    2. SQL JOINの順序はパフォーマンスに影響しますか?

    3. PostgreSQLの関数内でSELECTの結果を返す方法は?

    4. LaravelUnixソケットを備えたMAMP