Zum Inhalt wechseln


Foto

Abfrage Problem - Zeile mit aktuellsten Datum wählen


  • Bitte melde dich an um zu Antworten
9 Antworten in diesem Thema

#1 moestavern

moestavern

    Newbie

  • 12 Beiträge

 

Geschrieben 24. März 2010 - 12:50

Hallo,

komme mit meinem Rookie Wissen nicht weiter.
Gegeben: Eine Tabelle mit den Spalten: ID, Artikelnr, Datum, Wert
Jetzt möchte ich den Wert einer Artikelnummer mit dem aktuellsten Datum in die Sicht übernhemen.
Beispieltabelle:
ID, Artikelnr. , Datum, Wert
1, 123, 2010-03-03, 10
2, 123, 2010-02-20, 15

Den Wert (10) aus der ersten Zeile hätte ich gern in meiner Sicht.
Kann jemand helfen? Vielen Dank und Gruß

Bearbeitet von moestavern, 24. März 2010 - 13:06.


#2 zahni

zahni

    Expert Member

  • 16.379 Beiträge

 

Geschrieben 24. März 2010 - 12:52

Schau Dir für den Anfang mal ein paas SQL-Grundlagen an:

ORDER BY - SQL Befehl

-Zahni

Wen du nicht mit Können beeindrucken kannst, den verwirre mit Schwachsinn!


#3 moestavern

moestavern

    Newbie

  • 12 Beiträge

 

Geschrieben 24. März 2010 - 13:04

Leider weiß ich nicht, was mir diese Grundlagen für meine Frage bringen sollen.
Ich möchte keinen Order Befehl, sondern einen bestimmten Wert abfragen...

#4 zahni

zahni

    Expert Member

  • 16.379 Beiträge

 

Geschrieben 24. März 2010 - 13:07

Ich habe DI so verstanden, dass DU den Artkiel mit dem nuesten Dateum ganz oben haben willst. Ansonsten verstehe ich die Fragestellung nicht.

-zahni

Wen du nicht mit Können beeindrucken kannst, den verwirre mit Schwachsinn!


#5 moestavern

moestavern

    Newbie

  • 12 Beiträge

 

Geschrieben 24. März 2010 - 13:11

Nee, ich hätte gern die 10 aus der Spalte Wert der Tabelle in die View.
Da die Artikelnummer mehrfach vorkommen kann brauch ich den Wert der Artikelnummer mit dem aktuellsten Datum.
Versteht man das jetzt? Sorry bin noch nicht so fit...

#6 Cybquest

Cybquest

    Expert Member

  • 1.882 Beiträge

 

Geschrieben 24. März 2010 - 13:16

In der Art z.B.:
Select Wert from Tabelle where Datum = (Select Max(Datum) From Tabelle)

My name is Frank, you can say you to me.

#7 zahni

zahni

    Expert Member

  • 16.379 Beiträge

 

Geschrieben 24. März 2010 - 13:23

z.B. select frist 1 ID, Artikelnr, Datum, Wert from mytable
where wert=10
order by datum;

-Zahni


Wie gsagt: Es gibt genügend Seiten im Internet, die SQL-Grundlagen vermitteln.
z.B. auch http://en.wikipedia....iki/Select_(SQL)

-Zahni

Wen du nicht mit Können beeindrucken kannst, den verwirre mit Schwachsinn!


#8 Cybquest

Cybquest

    Expert Member

  • 1.882 Beiträge

 

Geschrieben 24. März 2010 - 13:32

Oder so:
SELECT A.*
FROM Tabelle AS A INNER JOIN
  (SELECT B.ArtikelNr, Max(B.Datum) As [MaxDat]
  FROM Tabelle AS B
  GROUP BY B.ArtikelNr) AS C
ON A.ArtikelNr = C.ArtikelNr 
AND A.Datum = C.[MaxDat]

(siehe auch Sql-Abfrage zur Ermittlung einzelner Zeilen aus einer Detailtabelle mit Aggregation )
My name is Frank, you can say you to me.

#9 moestavern

moestavern

    Newbie

  • 12 Beiträge

 

Geschrieben 24. März 2010 - 13:36

Die Antwort von Cybquest geht in die richtige Richtung. Leider habe ich so nur noch ein Ergebniss in der Abfrage. Wenn es mehrere Artikel sind die mehrmals vorkommen, habe ich so nur den mit dem aktuellsten Datum.
Vielen, vielen Dank bis hier hin...

#10 moestavern

moestavern

    Newbie

  • 12 Beiträge

 

Geschrieben 24. März 2010 - 13:38

Sql-Abfrage zur Ermittlung einzelner Zeilen aus einer Detailtabelle mit Aggregation -> Das scheint es zu sein. Super! Tausend Dank. ...und Entschuldigung, wenn ich mich missverständlich ausdrücke!