Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Aus 2 Tabellen Daten selektieren geht nicht (https://www.delphipraxis.net/206866-aus-2-tabellen-daten-selektieren-geht-nicht.html)

NoName1 4. Feb 2021 17:41

Datenbank: IB • Version: egal • Zugriff über: egal

Aus 2 Tabellen Daten selektieren geht nicht
 
Guten Tag,
ich möchte aus 2 Tabellen Daten selektieren.
Was ja eigentlich keine Schwierigkeiten bedeuten sollte.

Code:
select l.adressid, l.datum, l.titel, l.name2|| ' ' ||l.name1 as Teilnehmer,
l.grundabwesend, l.lastatus, t.ITEMBEGIN, t.arbeitstext from tuteilnehmer l
RIGHT join turniertage t
on (l.datum = cast(t.itembegin as Date))
where l.Adressid = :pAdressID
and EXTRACT(year from l.datum) = :pJahr
order by t.ITEMBEGIN desc
t.Itembegin ist ein TimeStamp und l.Datum ist ein Datumsfeld
Wenn ich die Zeile:
Code:
and EXTRACT(year from l.datum) = :pJahr
fortlasse, werden alle Daten des Teilnehmers gelistet was ja auch richtig ist.
Ich möchte aber die Daten für ein bestimmtes Jahr selektieren.
Versucht habe ich (left join, inner join) aber keines war erfolgreich.
Auch mit
Code:
and EXTRACT(Year from cast(t.itembegin as Date) = :pJahr
wurden keine Daten gelistet.

Weiß vielleicht jemand, was geändert werden muß damit die Daten für ein Jahr korrekt gelistet werden?

Vielen Dank für Hinweise im Voraus.

mkinzler 4. Feb 2021 17:51

AW: Aus 2 Tabellen Daten selektieren geht nicht
 
Was wird als Jahr ausgegeben?
SQL-Code:
select
  l.datum, l.titel, t.ITEMBEGIN, t.arbeitstext, EXTRACT(year from l.datum) as jahr
from
  tuteilnehmer l
    RIGHT join turniertage t on cast(t.itembegin as Date) = l.datum
where l.Adressid = :pAdressID;

NoName1 4. Feb 2021 19:04

AW: Aus 2 Tabellen Daten selektieren geht nicht
 
Zitat:

Zitat von mkinzler (Beitrag 1482269)
Was wird als Jahr ausgegeben?
SQL-Code:
select
  l.datum, l.titel, t.ITEMBEGIN, t.arbeitstext, EXTRACT(year from l.datum) as jahr
from
  tuteilnehmer l
    RIGHT join turniertage t on cast(t.itembegin as Date) = l.datum
where l.Adressid = :pAdressID;

Ich rudere zurück und muss mich entschuldigen. War wohl doch ein zu langer Tag.
Als Jahr habe ich anstatt 2020 nur 20 eingegeben und damit geht es naturgemäss nicht!


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:35 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