Re: [de-users] Frage zu SQL CASEWHEN mit Unterabfrage

2022-08-26 Diskussionsfäden Stefan Deutsch

Danke Robert,

das war schon mal eine Hilfe! Ich werde nächste Woche weiter dran
arbeiten. BIn über das Wochenende weg.

Viele Grüße

Stefan

Am 26.08.2022 um 09:53 schrieb Robert Großkopf:

Hallo Stefan


SELECT
"tab_Rechnung02"."Rechnungsnr.",
(SELECT "check_MahnDat" FROM "tab_RechSuch" WHERE "ID" = FALSE) AS
"check_MahnDat1",
(SELECT CASEWHEN ("check_MahnDat1" = TRUE, (SELECT "Mahndatum" FROM
"tab_Rechnung02" WHERE "Mahndatum" <= CURRENT_DATE) AS "Mahndatum_erf",
"Mahndatum")  FROM "tab_Rechnung02") AS "Mahndatum1"
FROM "tab_Rechnung02"



Nur kurz (wenig Zeit): Die Unterabfrage zu "Mahndatum1" bezieht sich
bei Dir direkt auf ein Alias, das Du davor erstellt hast. Das ist da
unbekannt.
(SELECT CASEWHEN ((SELECT "check_MahnDat" FROM "tab_RechSuch" WHERE
"ID" = FALSE) = TRUE, (SELECT "Mahndatum" FROM
"tab_Rechnung02" WHERE "Mahndatum" <= CURRENT_DATE) AS "Mahndatum_erf",
"Mahndatum")  FROM "tab_Rechnung02")

Dann kennt die Bedingung auch das, was Du über ein Alias beschreibst.

Gruß

Robert


--
Diese E-Mail wurde von Avast-Antivirussoftware auf Viren geprüft.
www.avast.com

--
Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy


Re: [de-users] Frage zu SQL CASEWHEN mit Unterabfrage

2022-08-26 Diskussionsfäden Robert Großkopf

Hallo Stefan


SELECT
"tab_Rechnung02"."Rechnungsnr.",
(SELECT "check_MahnDat" FROM "tab_RechSuch" WHERE "ID" = FALSE) AS
"check_MahnDat1",
(SELECT CASEWHEN ("check_MahnDat1" = TRUE, (SELECT "Mahndatum" FROM
"tab_Rechnung02" WHERE "Mahndatum" <= CURRENT_DATE) AS "Mahndatum_erf",
"Mahndatum")  FROM "tab_Rechnung02") AS "Mahndatum1"
FROM "tab_Rechnung02"



Nur kurz (wenig Zeit): Die Unterabfrage zu "Mahndatum1" bezieht sich bei 
Dir direkt auf ein Alias, das Du davor erstellt hast. Das ist da unbekannt.
(SELECT CASEWHEN ((SELECT "check_MahnDat" FROM "tab_RechSuch" WHERE "ID" 
= FALSE) = TRUE, (SELECT "Mahndatum" FROM

"tab_Rechnung02" WHERE "Mahndatum" <= CURRENT_DATE) AS "Mahndatum_erf",
"Mahndatum")  FROM "tab_Rechnung02")

Dann kennt die Bedingung auch das, was Du über ein Alias beschreibst.

Gruß

Robert
--
Homepage: https://www.familiegrosskopf.de/robert

--
Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy


Re:  [de-users] Frage zu SQL CASEWHEN mit Unterabfrage

2022-08-26 Diskussionsfäden Stefan Deutsch

Hi Christoph,

das hat den Sinn, dass die Tabelle dazu dient, Suchwerte aus einem
Formular zu speichern. Deshalb braucht sie nur einen Wert zu speichern.
Dieser wird dann in einer Abfrage verwendet, um die eigentlich
untersuchte Tabelle zu filtern. Das hab ich auch schon an verschiedenen
anderen Stellen so gemacht. Dieses Mal ist die Abfrage allerdings
komplexer.
Es geht darum, Rechnungen zu filtern. Ein Kriterium ist, ob das
Mahndatum überschritten wurde. Das ist in der Suchtabelle ein boolscher
Wert, aber in der eigentlichen Tabelle steht natürlich ein festes Datum.
Deshalb der Vergleich mit dem CASEWHEN.

Viele Grüße

Stefan

Am 26.08.2022 um 08:11 schrieb Christoph Schultz:

Hallo Stefan,Mir fällt direkt in die Augen, dass id boolean ist. Das ist mir so 
noch nicht vorgekommen. Normalerweise ist id ein unique-Wert, der nur einmal 
für jeden Datensatz vorhanden sein darf. Nun kenne ich natürlich nicht die 
Struktur deiner Datenbank,  daher wäre es gut wenn du die noch posten 
könntest.Soweit erstmal von mirChristoph Schultz


--
Diese E-Mail wurde von Avast-Antivirussoftware auf Viren geprüft.
www.avast.com

--
Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy


Aw: [de-users] Frage zu SQL CASEWHEN mit Unterabfrage

2022-08-26 Diskussionsfäden Christoph Schultz
Hallo Stefan,Mir fällt direkt in die Augen, dass id boolean ist. Das ist mir so 
noch nicht vorgekommen. Normalerweise ist id ein unique-Wert, der nur einmal 
für jeden Datensatz vorhanden sein darf. Nun kenne ich natürlich nicht die 
Struktur deiner Datenbank,  daher wäre es gut wenn du die noch posten 
könntest.Soweit erstmal von mirChristoph Schultz
-- 
Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy


[de-users] Frage zu SQL CASEWHEN mit Unterabfrage

2022-08-25 Diskussionsfäden Stefan Deutsch

Guten Morgen,

ich versuche mich gerade an einer Abfrage mit Unterabfrage:

SELECT
"tab_Rechnung02"."Rechnungsnr.",
(SELECT "check_MahnDat" FROM "tab_RechSuch" WHERE "ID" = FALSE) AS
"check_MahnDat1",
(SELECT CASEWHEN ("check_MahnDat1" = TRUE, (SELECT "Mahndatum" FROM
"tab_Rechnung02" WHERE "Mahndatum" <= CURRENT_DATE) AS "Mahndatum_erf",
"Mahndatum")  FROM "tab_Rechnung02") AS "Mahndatum1"
FROM "tab_Rechnung02"

Hier der Teil, bei dem ich Probleme habe. Die erste Unterabfrage fragt
eine BOOLEAN ab. In der zweiten will ich das mit CASEWHEN verarbeiten.
Wenn der BOOLEAN WAHR ist, sollen nur Ergebnisse ausgespuckt werden, bei
denen das Mahndatum überschritten ist. Ansonsten alle.

Also erstmal scheint es nicht zu gehen, dass ich die erste Unterabfrage
in der zweiten weiterverarbeite. Wahrscheinlich, weil die Abfrage zu dem
Zeitpunkt noch nicht erledigt ist. Das lässt sich sicherlich durch
weiteres verschachteln lösen. Allerdings klappt es auch nicht, im
CASEWHEN als ersten Ausdruck eine Unterabfrage mit WHERE-Klausel zu nutzen.

Über eure Hinweise würde ich mich freuen!

Viele Grüße

Stefan


--
Diese E-Mail wurde von Avast-Antivirussoftware auf Viren geprüft.
www.avast.com

--
Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy