Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Fügen Sie mehrere Zeilen mit derselben eindeutigen ID ein

Wenn ich Ihre Frage richtig verstanden habe, möchten Sie eine ID angeben für die spezifische Gruppe von INSERT Aussagen.

Angenommen, Sie haben dieses Schema

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

Sie können dafür zwei Anweisungen haben:

1.) Abrufen der letzten GroupID und um 1 erhöhen .

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

2.) Speichern Sie nach der Ausführung den Wert in einer Variablen. Verwenden Sie diese Variable für alle Insert-Anweisungen,

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

AKTUALISIERUNG 1