SQL-Select

Diskutiere SQL-Select im Datenbanken Forum im Bereich Datenbanken; folgendes Problem: ich habe drei Datenfelder, die Zahlen(int) enthalten. nennen wir sie d1, d2 und d3. Nun will ich: d1 wählen, wenn d2 leer ist...
#1
A

AlienJoker

Gast
folgendes Problem:
ich habe drei Datenfelder, die Zahlen(int) enthalten. nennen wir sie d1, d2 und d3.
Nun will ich:
d1 wählen, wenn d2 leer ist
d2 wählen, wenn d2 nicht leer ist, aber d3
d3 wählen, wenn d3 nicht leer ist.

Wie?


/edit:
alternative beschreibung:
Wenn d3 nen Wert enthält, soll der genommen werden, wenn nicht d2.
Wenn d2 auch nix enthält, dann d1 (der ist immer gefüllt)
 
Zuletzt bearbeitet:
#2
L

LauxAimoEwa

Dabei seit
04.12.2006
Beiträge
2.003
Reicht es nicht, wenn Du die einfach addierst :D
 
#3
A

AlienJoker

Gast
haha...sehr witzig, nein, reicht nicht!
ich habe einfach ne Berichtsnummer und pro Datensatz will ich mehrere erlauben
 
#4
B

bagira

Dabei seit
29.06.2006
Beiträge
298
Ort
in Deutschland.
möchtest du das in ein sql-statement packen, oder reicht es dir, wenn die datensätze einzeln abgearbeitet werden und du dann deine abfrage mit verschachtelten if-bedingungen abfragst.
 
#5
stpe

stpe

Dabei seit
14.11.2001
Beiträge
2.729
Wenn immer nur ein Feld ein Datum enthält, hilft Dir evtl. die max()-Funktion weiter.

Gruß
Stefan
 
#6
A

AlienJoker

Gast
ein statement wäre perfekt (gepackte selects), muss aber nicht sein
da immer gilt: d3>d2>d1 geht das mit dem max tatsächlich
 
Zuletzt bearbeitet:
#7
H

HWFlo

Dabei seit
04.09.2005
Beiträge
5.271
Alter
31
naja also das einfachste wäre meiner meinung nach alle 3 felder zu lesen und dann mittels einer Programmiersprache noch ne logik dahinter zu legen um das gelesene auszuwerten
 
#8
A

AlienJoker

Gast
die Sache ist die, dass ich das nebenbei mache, um mir die Arbeit (Dokumentenmanagment/Control) zu erleichtern und ich es für die Kohle hier net einsehe, groß zu coden, denn sonst wäre die DB um einiges effizienter.
 
#9
msueper

msueper

Dabei seit
20.01.2005
Beiträge
1.634
bei oracle ginge das mit "select decode(bedingung, wert falls true, wert falls false) from table where irgendwas".
Du müsstest dazu natürlich mehrere decodes verschachteln. Ob ein Feld leer ist erfrgat man über "is null" oder "is not null".
 
Thema:

SQL-Select

SQL-Select - Ähnliche Themen

  • SQL-Server ist mit Windows 10 schneller als mit Windows Server 2016

    SQL-Server ist mit Windows 10 schneller als mit Windows Server 2016: Hallo, ich habe eine Frage, warum ist ein SQL-Server Standard 2017 der auf einem Windows 10 installiert ist schneller als wenn ich ihn auf...
  • Fehlermeldung SQL Local DB 11.0 ID 528 wie beheben?

    Fehlermeldung SQL Local DB 11.0 ID 528 wie beheben?: Fehlermeldung SQL Local DB 11.0 ID 528 wie beheben?
  • Microsoft SQL Server 2017 Reporting Services aktivieren

    Microsoft SQL Server 2017 Reporting Services aktivieren: Hallo liebe Community, ich erhalte folgende Fehlermeldung, wenn ich Microsoft SQL Server 2017 Reporting Services mit unserem Productkey...
  • Besitze einen ASUS NOVAGO, SQL-Server

    Besitze einen ASUS NOVAGO, SQL-Server: Sehr geehrte Damen und Herren, besitze das ASUS NOVAGO für gewerbliche Zwecke und benötige den Microsoft SQL-Server, dieser kann nicht installiert...
  • SQL Statement "Select ab Zeile" gesucht

    SQL Statement "Select ab Zeile" gesucht: Folgendes Problem: Ich möchte eine Abfrage auf eine DB setzen, welche die Daten splittet. Wenn mehr als 500 Daten vorhanden sind, dann setze ich...
  • Ähnliche Themen

    Oben