sql >> Databasteknik >  >> RDS >> Mysql

Infoga flera rader med samma unika ID

Om jag förstått din fråga rätt vill du ange ett ID för den specifika gruppen INSERT uttalanden.

Förutsatt att du har detta schema

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

Du kan ha två påståenden för detta:

1.) Hämta det senaste GroupID och öka den med 1 .

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

2.) När du har kört det, lagra värdet i en variabel. Använd denna variabel för alla insert-satser,

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

UPPDATERING 1




  1. Python från grunden:Skapa en dynamisk webbplats

  2. hur man byter ut flera strängar tillsammans i Oracle

  3. En-till-många-relation i MySQL - hur bygger man en modell?

  4. oracle sql:uppdatera om det finns annat infoga