Ich habe die folgenden Tabellen:Insert-Abfrage mit Update
Tabelle "Namen":
ID | Name
--- | ---
123 | John
164 | Peter
346 | Mark
679 | Bob
Tabelle "Unternehmen":
ID | Company
--- | ---
111 | XXX
666 | YYY
777 | ZZZ
Tabelle "Tabelle1":
ID | c1 | c2 | NameID | CompanyName
--- | --- | --- | ------ | -----------
1254 | 1 | A | 123 | XXX
1548 | 1 | A | 123 | YYY
2649 | 1 | A | 123 | ZZZ
2687 | 3 | B | 164 | ZZZ
2699 | 1 | A | 164 | YYY
2700 | 4 | (NULL) | 346 | XXX
2711 | 4 | (NULL) | 346 | YYY
2900 | 4 | A | 679 | YYY
Ich muss eine Einfügeabfrage machen, so dass Datensätze mit demselben c1 und c2 (wenn c2 nicht null ist) oder demselben c1 nur (wenn c2 gleich null ist) werden in Table2 eingefügt und die ID in Table2 aktualisiert, um die minimale ID von Table1 zu sein.
sollte das Ergebnis so aussehen:
Tabelle „Tabelle2“:
ID | c1 | c2 | NameID | CompanyID
--- | --- | --- | ------ | -----------
1254 | 1 | A | 123 | 111
1254 | 1 | A | 123 | 666
1254 | 1 | A | 123 | 777
2687 | 3 | B | 164 | 777
2687 | 1 | A | 164 | 666
2700 | 4 | (NULL) | 346 | 111
2700 | 4 | (NULL) | 346 | 666
2900 | 4 | A | 679 | 666
, wie ich aus dem Ergebnis beurteilen kann, müssen Sie nur Company ändern –
CompanyID Ich glaube, Sie wollen Um eine Tabelle zu erstellen, in der Sie ausgewählte Abfrageergebnisse speichern möchten, was nicht wirklich eine gute Idee ist, stellen Sie einfach eine Abfrage bereit, wann immer sie benötigt wird. Aktualisieren einer ID ist in der Regel auch eine schlechte Idee, können Sie eine Integrität Ihrer Daten brechen. – Ruli
@Ruli Es ist nur, dass ich alle Datensätze mit Mindest-ID eingefügt werden muss. – Sally