![]() |
Datenbank: MySQL Embedded • Version: 5.0 • Zugriff über: ZeosLib
SQL Abfrage Query - ich komm nicht auf die Lösung
Ich habe schon einige PHP Projekt mit MySQL und PostgreSQL gemacht. Mit Delphi Datenbankabfragen starten ist auch nicht das Thema. Aber nun steh ich echt an einem Rätsel wo ich nicht weiterkomme.
Zustand: - Eine CSV-Datei einlesen, Werte in DB speichern. OK - Gruppen erstellen und Eingabewerte prüfen, auch kein Thema - Es werden täglich Artikel mit neuen Preisen eingelesen, die in der Datenbank mit einem Datumsfeld gespeichert werden. Problem: Wie sortiere ich gleichzeitig nach dem letzten Datum ( date DESC ) und gruppiere dabei die Artikelnummer? Beispiel: 1. Tag: Artikel 1 - 10 Euro Artikel 2 - 11 Euro Artikel 3 - 12 Euro 2. Tag: Artikel 1 - 15 Euro Artikel 2 - 16 Euro Artikel 3 - 17 Euro 3. Tag: Artikel 1 - 9 Euro Artikel 2 - 8 Euro 4. Tag: Artikel 1 - 10 Euro Artikel 3 - 10 Euro nach Datum sortieren ist nicht das Thema, nach Artikel macht es auch keinen Sinn. Also soll zwar das neuste oben stehen, aber da ich ja nicht jeden Tag von allen einen neuen Preis kriege, sollen die Artikel nach Datum sortiert werden und evtl nur die letzten 3 Änderungen angezeigt werden. Das Ergebnis sollte so aussehen: Artikel 1 - 10 Euro > 4.Tag Artikel 1 - 9 Euro > 3.Tag Artikel 1 - 15 Euro > 2.Tag Artikel 3 - 10 Euro > 4.Tag Artikel 3 - 17 Euro > 2.Tag Artikel 3 - 12 Euro > 1.Tag Artikel 2 - 8 Euro > 3.Tag Artikel 2 - 16 Euro > 2.Tag Artikel 2 - 11 Euro > 1.Tag Boah viel Text, und bestimmt ganz einfach. Ich komm nur nicht drauf. |
Re: SQL Abfrage Query - ich komm nicht auf die Lösung
Sollte doch mit LIMIT gehen.
|
Re: SQL Abfrage Query - ich komm nicht auf die Lösung
Hallo!
Im Endeffekt ist das doch eine Gruppierung über Artikel und Datum, mit anschliessender Sortierung nach Datum. Also einfach
SQL-Code:
Natürlich muss das SQL angepasst werden, je nach Normalisierung kommen da noch ein paar Joins rein...
select ARTIKEL,DATUM,SUM(BETRAG)
from PREISE group by ARTIKEL,DATUM order by DATUM DESC Cu, Udontknow |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz