Bedingung(en) in Abfrage ...

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Bedingung(en) in Abfrage ...

von Deneb » Do, 21.12.2006 14:54

HI, so ... durch menschliche Hilfe haben wir eine Lösung gefunden!

das Zauberwort heißt: UNION


Bsp.

(SELECT
"qry_Firma"."FIRMENNR" AS "Firmennummer",
"qry_Firma"."Firmennamen" AS "Firmenname",
("qry_Partner"."ANREDE" || ' ' || "qry_Partner"."VORNAME" || ' ' || "qry_Partner"."NAME") AS "Kontaktperson",
"qry_Firma"."STRASSE" AS "Adresszeile 1",
"qry_Firma"."ABTEILUNG" AS "Adresszeile 2",
' ' AS "Adresszeile 3",
"qry_Firma"."ORT" AS "Ort",
"qry_Firma"."LAND" AS "Land/Gebiet",
"qry_Firma"."PLZ" AS "Postleitzahl",
'' AS "Staat/Provinz",
'0' AS "Privatzustellung",
' ' AS "Kundennummer",
"qry_Partner"."TELEFON1" AS "Telefonnummer",
' ' AS "USt-ID", ' ' AS "Standort-ID",
' ' AS "UPS Kundennummer",
' ' AS "Datensatzeigentümer",
"qry_Partner"."EMAIL" AS "E-Mail-Adresse 1",
'ups@es-manebach.de' AS "E-Mail-Adresse 2",
("qry_Partner"."VORNAME" || ' ' || "qry_Partner"."NAME") AS "Name des E-Mail-Empfängers 1" ,
'engineering und software gmbh' AS "Name des E-Mail-Empfängers 2"
FROM "qry_Partner", "qry_Firma"
WHERE ( "qry_Partner"."FIRMENNR" = "qry_Firma"."FIRMENNR" )AND "qry_Partner"."VORNAME" IS NOT NULL AND "qry_Partner"."NAME" IS NOT NULL )

UNION

(SELECT
"qry_Firma"."FIRMENNR" AS "Firmennummer",
"qry_Firma"."Firmennamen" AS "Firmenname",
("qry_Partner"."ANREDE" || ' ' || "qry_Partner"."NAME") AS "Kontaktperson",
"qry_Firma"."STRASSE" AS "Adresszeile 1",
"qry_Firma"."ABTEILUNG" AS "Adresszeile 2",
' ' AS "Adresszeile 3",
"qry_Firma"."ORT" AS "Ort",
"qry_Firma"."LAND" AS "Land/Gebiet",
"qry_Firma"."PLZ" AS "Postleitzahl",
'' AS "Staat/Provinz",
'0' AS "Privatzustellung",
' ' AS "Kundennummer",
"qry_Partner"."TELEFON1" AS "Telefonnummer",
' ' AS "USt-ID", ' ' AS "Standort-ID",
' ' AS "UPS Kundennummer",
' ' AS "Datensatzeigentümer",
"qry_Partner"."EMAIL" AS "E-Mail-Adresse 1",
'ups@es-manebach.de' AS "E-Mail-Adresse 2",
"qry_Partner"."NAME" AS "Name des E-Mail-Empfängers 1" ,
'engineering und software gmbh' AS "Name des E-Mail-Empfängers 2"
FROM "qry_Partner", "qry_Firma"
WHERE ( "qry_Partner"."FIRMENNR" = "qry_Firma"."FIRMENNR" ) AND "qry_Partner"."VORNAME" IS NULL )

Somit ist die Bedingung geschaffen, das man aus [Anrede], [Vornamen] und [Namen] ein eigenständiges Feld mit diesem Inhalt erhält,
gleichzeitig wir aus [Anrede] und [Name] (also dort, wo der Vorname fehlt) ein anderes Feld, nämlich [Anrede + Name] .... OHNE, das der Inhalt verschwindet!

M.f.G.

Bedingung(en) in Abfrage ...

von Deneb » Do, 21.12.2006 10:15

Hallo,

Ich möchte in einer Abfrage ein neues Feld erstellen, welches den Inhalt von Tabellenspalten kombinieren soll und dabei gewisse Bedingungen hat!

Tabelle: qry_Partner (und qry_Firma, spielt aber keine Rolle)
Tabellenfelder: [Anrede], [Vorname], [Name]

Bis jetzt sieht das so aus:
SELECT "qry_Firma"."FIRMENNR" AS "Firmennummer", "qry_Firma"."Firmennamen" AS "Firmenname", ("qry_Partner"."ANREDE" || ' ' || "qry_Partner"."VORNAME" || ' ' || "qry_Partner"."NAME") AS "Kontaktperson" ....

Wenn alle 3 Felder einen Inhalt aufweisen, is alles ok.

ABER, sobald ein Feld ohne Inhalt ist, bleibt das neue Feld "Kontaktperson" LEER.

z.B. [Anrede] = Herr , [Vorname] = Uwe, [Name]= Heinz
--> [Kontaktperson] = Herr Uwe Heinz alles OK

[Anrede] = Frau, [Vorname] = "LEER", [Name] = Schmidt
--> [Kontaktperson] = "LEER" Nicht ok!
Ziel: [Kontaktperson] = Frau Schmidt

Wie/ Wo fügt man nun in der SQL-Ansicht, bei den Abfragen eine Bedinung ein, die es mir u.a. erlaubt, solche Fälle zu berücksichtigen?

z.B. Wenn [Anrede] und [Name] gegeben, dann [Kontaktperson]= [Anrede + Name]
oder
Wenn nur [Anrede] gegeben (also kein Namensteil), dann soll [Kontaktperson] LEER bleiben (diesmal aber gewollt).

M.f.G. Deneb

Nach oben