AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi SQL-Update mit Unterabfrage
Thema durchsuchen
Ansicht
Themen-Optionen

SQL-Update mit Unterabfrage

Ein Thema von HolgerCW · begonnen am 15. Dez 2016 · letzter Beitrag vom 15. Dez 2016
Antwort Antwort
HolgerCW

Registriert seit: 28. Nov 2006
Ort: Marl
1.207 Beiträge
 
Delphi XE7 Enterprise
 
#1

SQL-Update mit Unterabfrage

  Alt 15. Dez 2016, 10:25
Datenbank: Oracle • Version: 12 • Zugriff über: ADO
Hallo zusammen,

ich möchte ein Update ausführen. Ich benötige dafür eine Unterabfrage. Nun ist der Datensatz nicht mit einer Spalte eindeutig indentifizierbar.

Wie könnte ich dieses Update-Statement ändern ? Wenn ich nur über die Spalte mo.AUFTRAG_ID gehen könnte würde das ja so funktionieren.

Delphi-Quellcode:
update sys.zst_2bmobil mo
 set mo.angeliefert = '1
where mo.AUFTRAG_ID, mo.ZAEHLERNUMMER, mo.ZAEHLWERKNUMMER IN

( Select m.AUFTRAG_ID, m.ZAEHLERNUMMER, m.ZAEHLWERKNUMMER
from sys.zst_2bmobil m
left join sys.zst_lager l
on m.zaehlernummer = l.geraet
where m.zaehleraltneu=1
and m.angeliefert is null
and m.ablesedatum >= '27.07.2016
and m.ort <> 'Dorsten'
and l.datum_bis = '31.12.9999'
and l.lagertyp = '302')
Gruss

Holger
  Mit Zitat antworten Zitat
Benutzerbild von Devil1925
Devil1925

Registriert seit: 20. Nov 2015
Ort: Saerbeck
236 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: SQL-Update mit Unterabfrage

  Alt 15. Dez 2016, 10:33
Eventuell so? (Ungetestet)
Code:
update sys.zst_2bmobil mo
 set mo.angeliefert = '1'
where Cast(mo.AUFTRAG_ID as Varchar(20))+'-'+Cast(mo.ZAEHLERNUMMER as Varchar(20))+'-'+ cast(mo.ZAEHLWERKNUMMER as Varchar(20)) IN

( Select Cast(m.AUFTRAG_ID as Varchar(20))+'-'+Cast(m.ZAEHLERNUMMER as Varchar(20))+'-'+ cast(m.ZAEHLWERKNUMMER as Varchar(20))
from sys.zst_2bmobil m
left join sys.zst_lager l
on m.zaehlernummer = l.geraet
where m.zaehleraltneu=1
and m.angeliefert is null
and m.ablesedatum >= '27.07.2016'
and m.ort <> 'Dorsten'
and l.datum_bis = '31.12.9999'
and l.lagertyp = '302')
Philipp
Höllische Grüße
Devil
Meistens sitzt das Problem vor dem Bildschirm! - Leider bin das oftmals ich.
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.736 Beiträge
 
Delphi 6 Enterprise
 
#3

AW: SQL-Update mit Unterabfrage

  Alt 15. Dez 2016, 10:59
Oder da Oracle vllt. einfach:

mo.AUFTRAG_ID||'_'||mo.ZAEHLERNUMMER||'_'||mo.ZAEH LWERKNUMMER
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von Devil1925
Devil1925

Registriert seit: 20. Nov 2015
Ort: Saerbeck
236 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: SQL-Update mit Unterabfrage

  Alt 15. Dez 2016, 11:09
gut, ich habe es aus sicht von MSSQL gemacht, hatte danach erste gesehen, dass es Oracle ist. (ausserdem weiss ich nicht wie da die Syntax ist)
Philipp
Höllische Grüße
Devil
Meistens sitzt das Problem vor dem Bildschirm! - Leider bin das oftmals ich.
  Mit Zitat antworten Zitat
HolgerCW

Registriert seit: 28. Nov 2006
Ort: Marl
1.207 Beiträge
 
Delphi XE7 Enterprise
 
#5

AW: SQL-Update mit Unterabfrage

  Alt 15. Dez 2016, 11:12
Hey super,

nun hat es geklappt.

Die Lösung ging dann mit:

mo.AUFTRAG_ID||'_'||mo.ZAEHLERNUMMER||'_'||mo.ZAEHLWERKNUMMER Vielen dank.

Gruss

Holger
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz