Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: intergalactic am Februar 02, 2016, 14:58:24

Titel: Unterselect mit Max()-Funktion
Beitrag von: intergalactic am Februar 02, 2016, 14:58:24
Hallo zusammen,

Habe eine Tabelle die über ihren PS mit mehreren anderen Tabellen verknüpft ist. In einer Abfrage frage ich verschiedene Felder aus den Tabellen (jede hat eine ID) zu einer bestimmten PS-Nr. ab. Dies funktioniert auch.

Im zweiten Schritt nehme ich diese Abfrage und will die einzelnen IDs der Tabellen nach Maximum filtern, will also die neuesten IDs. Also mit einem Unterselect und Max(). Dies funktioniert aber nur wenn jeder PS zugehörige Werte in jeder abgefragten Tabelle hat. Ich möchte aber dass die vorhandenen IDs nach Maximum sortiert werden, egal ob eine ID Null ist, sollte im bestenfall einfach ignoriert werden.  Kann mit hier bitte jemand weiterhelfen? Komme selber leider nicht mehr weiter. lg intergalactic
Titel: Re: Unterselect mit Max()-Funktion
Beitrag von: MaggieMay am Februar 02, 2016, 15:17:57
Hallo,

es wäre wohl einfacher, wenn du uns den bisherigen SQL-Code dazu zeigen könntest.
Titel: Re: Unterselect mit Max()-Funktion
Beitrag von: intergalactic am Februar 02, 2016, 15:58:31
SELECT qryAbfrage1.*
FROM qryAbfrage1
WHERE (((qryAbfrage1.tblTabelleA.ID)=(Select max([tblTabelleA]![ID]) from [qryAbfrage1])) AND ((qryAbfrage1.tblTabelle2.ID)=(Select max([tblTabelle2]![ID]) from [qryAbfrage1])) AND ((qryAbfrage1.tblTabelle3.ID)=(Select max([tblTabelle3]![ID]) from [qryAbfrage1])) AND ((qryAbfrage1.tblTabelle4.ID)=(Select max([tblTabelle4]![ID]) from [qryAbfrage1])) AND ((qryAbfrage1.tblTabelle5.ID)=(Select max([tblTabelle5]![ID]) from [qryAbfrage1])));

So sieht die 2. Abfrage im Prinzip aus. Habe in der Entwurfsansicht gearbeitet. lg
Titel: Re: Unterselect mit Max()-Funktion
Beitrag von: MaggieMay am Februar 02, 2016, 16:37:14
ZitatDies funktioniert aber nur wenn jeder PS zugehörige Werte in jeder abgefragten Tabelle hat.
Wie sieht denn das Abfrageergebnis in dem Fall aus, ist das entsprechende Datenfeld leer oder ist es gar nicht vorhanden?

Und zeig doch bitte auch noch den Code von qryAbfrage1 - und bitte in Code-Tags verpackt!
Titel: Re: Unterselect mit Max()-Funktion
Beitrag von: intergalactic am Februar 03, 2016, 09:02:18
Also die Abfrage zeigt eben überhaupt keine Werte. Gewünscht wäre dass für jeden Datensatz alles angezeigt wird. Wo id vorhanden soll die größte und wo noch keine id vorhanden ein leeres Feld angezeigt werden.
Titel: Re: Unterselect mit Max()-Funktion
Beitrag von: MaggieMay am Februar 03, 2016, 13:16:33
Für weitere Hilfe wird unbedingt der Code der Abfrage "qryAbfrage1" benötigt, damit man sich ein Bild von den beteiligten Tabellen und Datenfeldern machen kann.