Jump to content

SQL Update und Select


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo Newsgroup,

 

ich habe eine Frage an die SQL Experten.

 

Ich habe folgende Abfrage definiert:

 

 

SELECT     STUELI.STUELI, STUELIPOS.STUELI AS Expr1, STUELI.NAME, ARTIKEL.ARTIKEL, ARTIKEL.NAME AS Expr2, ARTIKEL.AKTIV, 
                     ARTIKEL.SERIENMATERIAL
FROM         STUELIPOS INNER JOIN
                     STUELI ON STUELIPOS.STUELI = STUELI.STUELI INNER JOIN
                     ARTIKEL ON STUELIPOS.ARTIKEL = ARTIKEL.ARTIKEL

 

Nun möchte ich das Abfrageergebnis folgendermaßen updaten.

 

Und zwar:

UPDATE ARTIKEL

SET SERIENMATERIAL=1

WHERE SERIENMATERIAL=NULL

 

Kann man das kombinieren? DAs Ziel sollte sein, dass das Feld Serienmaterial (das nach der Abfrage in jedem Feld den WErt Null enthält) nachher eine 1 drinnenhat.

 

Funktioniert das so?

 

Herzlichen Dank für eure Hilfe! lg

Link zu diesem Kommentar

Rein theoretisch (wenn ich auf den ersten Blick deine Datenstruktur verstanden habe) müsste doch folgendes Statement ausreichen:


UPDATE ARTIKEL
SET SERIENMATERIAL=1
WHERE IsNull(SERIENMATERIAL, '') = ''
[/Code]

Annahme 1: Es handelt sich um eine MS SQL Server-Datenbank

Annahme 2: Du willst alle Artikel updaten, bei denen der Wert Serienmaterial aktuell NULL ist.

Ich seh noch nicht den Grund, das mit der eigentlichen Abfragen zu verknüpfen. Oder?

Link zu diesem Kommentar

Ok, dann musst du das halt mit dem anderen Statement als zusätzliche Einschränkung verknüpfen:


UPDATE ARTIKEL
SET SERIENMATERIAL=1
WHERE IsNull(SERIENMATERIAL, '') = ''
AND Artikel in
(
SELECT ARTIKEL.ARTIKEL
FROM STUELIPOS INNER JOIN
STUELI ON STUELIPOS.STUELI = STUELI.STUELI INNER JOIN
ARTIKEL ON STUELIPOS.ARTIKEL = ARTIKEL.ARTIKEL
)
[/Code]

 

Aber: vorher Backup / testen in ner Testdatenbank, ob das Ergebnis deinen Wünschen entspricht.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...