Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

abfrage mit zwei kriterien

Begonnen von Lenee, Juli 03, 2013, 10:37:56

⏪ vorheriges - nächstes ⏩

Lenee

Hallo,

nun ereilt mich ein weiteres Problem,

ich habe eine Tabelle Bestellung, in der befindet sich Artikelname,Menge, Bestelldatum, Lieferdatum, Abruf und Bestellschein nummer.

wobei die Bestellscheinnummer eigentlich nur ein zahl ist 0-5 höchstens

nach bestelldatum habe ich schon sortiert bekommen, sodas er mir immer nur Artikel mit dem heutigen Bestelldatumanzeigt( mit Datum() im Kreterium) und daraus soll dann nur noch der höchste wert von der Bestellscheinnummer gefiltert werden das Letztenendes alle artikel mit dem heutigen datum und z.b. mit der Bestellscheinnummer 4 angezeigt werden

anbei der Code von meiner abfrage,

SELECT tblArtikel.Artikelname, tblBestellung.Menge, tblBestellung.Bestelldatum, tblBestellung.Lieferdatum, tblBestellung.Abruf, Max(tblBestellung.Bestellscheinnummer) AS MaxvonBestellscheinnummer, tblHersteller.Hersteller, tblFarbe.Farbe, tblGröße.Größe, tblArtikel.Artikelnummer
FROM tblHersteller INNER JOIN (tblGröße INNER JOIN (tblFarbe INNER JOIN (tblArtikel INNER JOIN tblBestellung ON tblArtikel.ArtikelID = tblBestellung.Artikelname) ON tblFarbe.FarbID = tblArtikel.aFarbe) ON tblGröße.GrößeID = tblArtikel.aGröße) ON tblHersteller.HerstellerID = tblArtikel.aHersteller
WHERE (((tblBestellung.Bestelldatum)=Date()))
GROUP BY tblArtikel.Artikelname, tblBestellung.Menge, tblBestellung.Bestelldatum, tblBestellung.Lieferdatum, tblBestellung.Abruf, tblHersteller.Hersteller, tblFarbe.Farbe, tblGröße.Größe, tblArtikel.Artikelnummer
ORDER BY Max(tblBestellung.Bestellscheinnummer) DESC;

database

Hallo,

Zitat...mit dem heutigen datum und z.b. mit der Bestellscheinnummer 4 angezeigt werden
versuch mal:

SELECT tblArtikel.Artikelname, tblBestellung.Menge, tblBestellung.Bestelldatum, tblBestellung.Lieferdatum, tblBestellung.Abruf,
tblBestellung.Bestellscheinnummer, tblHersteller.Hersteller, tblFarbe.Farbe, tblGröße.Größe, tblArtikel.Artikelnummer
FROM tblHersteller INNER JOIN (tblGröße INNER JOIN (tblFarbe INNER JOIN (tblArtikel INNER JOIN tblBestellung ON tblArtikel.ArtikelID = tblBestellung.Artikelname)
ON tblFarbe.FarbID = tblArtikel.aFarbe) ON tblGröße.GrößeID = tblArtikel.aGröße) ON tblHersteller.HerstellerID = tblArtikel.aHersteller
WHERE tblBestellung.Bestelldatum=Date() AND tblBestellung.Bestellscheinnummer = 4

Lenee

hi,

danke für die schnelle antwort,

es funktioniert soweit, nur soll er mir nicht die "4" filtern sonder den max wert.
ich habe es schon mit gruppierungen versucht bzw. mit einer zwischenabfrage, aber ich stelle mich zu doof an

database

Hallo,

dann versuche mal so:


SELECT TOP 1 tblArtikel.Artikelname, tblBestellung.Menge, tblBestellung.Bestelldatum, tblBestellung.Lieferdatum, tblBestellung.Abruf,
tblBestellung.Bestellscheinnummer, tblHersteller.Hersteller, tblFarbe.Farbe, tblGröße.Größe, tblArtikel.Artikelnummer
FROM tblHersteller INNER JOIN (tblGröße INNER JOIN (tblFarbe INNER JOIN (tblArtikel INNER JOIN tblBestellung ON tblArtikel.ArtikelID = tblBestellung.Artikelname)
ON tblFarbe.FarbID = tblArtikel.aFarbe) ON tblGröße.GrößeID = tblArtikel.aGröße) ON tblHersteller.HerstellerID = tblArtikel.aHersteller
WHERE tblBestellung.Bestelldatum=Date()
ORDER BY tblBestellung.Bestellscheinnummer DESC

Lenee

Hallo,

danke, es funktioniert :D

aber kannst du mir die funktion kurz erklären?

WHERE (((tblBestellung.Bestelldatum)=Date()))

der code is klar, damit filter ich mir das heute datum raus

aber was ist mit

ORDER BY tblBestellung.Bestellscheinnummer DESC; ?

das  DESC verstehe ich nicht was macht das?

MzKlMu

#5
Hallo,
DESC sortiert absteigend.
ASC sortiert aufsteigend, das ist aber Standard kann bei gewollter aufsteigender Sortierung entfallen.


PS:
Warum fragst Du nicht die Access Hilfe zu DESC ?
Da wird das ausführlich mit Beispielen erklärt.
Wer die Access Hilfe ignoriert verschenkt viele gute und ausführliche Hinweise. Meist auch mit guten Beispielen.
Die Access Hilfe sollte man nicht unterschätzen.
Gruß Klaus

Lenee

danke für die erklärung

naja manchmal ist es schneller hier zu frage  :D ::)

das mit der hilfe sollte ich mir echt mal angewöhnen  ;D

wenn ich sonst immer reingeschaut hab hab ich das nicht so verstanden.....


database

#7
Hallo,

zu SQL ... siehe mal da:

http://www.w3schools.com/sql/default.asp

Aber noch als Nachtrag:

ORDER BY tblBestellung.Bestellscheinnummer DESC;

in Verbindung mit SELECT TOP 1  zeigt wie in deinem Fall den ersten Datensatz der Ergebnismenge an,
der durch die Sortierung mit DESC (Absteigende Sortierung) den gewünschten höchsten Wert des Sortierfeldes wiederbringt