Frage von selmash, 28

Wie wird diese SQL Abfrage erstellt?

Hallo zusammen. Ich stehe gerade vor einem Problem. Leider habe ich noch nicht so viel SQL Erfahrung, jedoch benötige ich es im Moment sehr. Ich habe eine Tabelle mit ca 1200 Werten. Die Tabelle ist folgendermassen aufgebaut.

ID, Name, Level

Nun ist es so, dass ich die 1200 Werte auf dem Level 5 habe. Nun möchte ich die genau gleichen Werte auch auf Level 6 haben. Sprich die Namen bleiben gleich, jedoch bekommt jeder neue Level 6 Wert eine neue ID.

Kann mir jemand hierbei helfen?

Ich danke euch schon mal für eure Antwort:)

Antwort
von Nube4618, 15

select ID, Name, Level + 1 into neueTabelle from aktuelleTabelle

(Bei dieser Form wird eine neue Tabelle erzeugt. Für den anderen Fall, das hat schon jemand beantwortet)

Antwort
von TomMetal, 4

Ein Eintrag in einer Tabelle (eine Zeile) heißt in der Datenbanksprache übrigends Tupel. Ein (wie du es nennst) "Wert" ist ein einzelner, für sich stehender Wert, also z.b. "5" oder "29324" oder auch ein String "Müller".

Antwort
von Flons, 26

Soll es ein Update sein? Update Tabelle set Level=6 where Level=5.

Kommentar von selmash ,

Hallo. Nein soll mit "insert into" sein. Sprich alle Werte auf Level 5 sollen noch bleiben.

Antwort
von Flons, 15

Okay, sorry.

insert into tabelle (id,Name, level) select id,name,'6' from tabelle;

Das sollte funktionieren..

Kommentar von Flons ,
Kommentar von grtgrt ,

Falls ID Schlüssel der Tabelle ist, kann das so nicht funktionieren.

Es müssen dann ja alle Datensätze unterschiedliche ID haben.

Keine passende Antwort gefunden?

Fragen Sie die Community