Jump to content

Pervasive SQL aus einer Tabelle den aktuellsten Wert ausgeben


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Guten Abend,

 

ich versuche mich schon seit Tagen an einem Problem. Komme aber leider nicht auf die Lösung. Ich habe viele Foren durchforstet und viel zu diesem Thema gefunden. Nur leider klappt es nicht mit der Umsetzung. Meine Hoffnung liegt nun hier in diesem Forum.

 

Zum Problem:

 

Ich benötige aus einer Tabelle den Verkaufspreis. Leider sind in der Orginal Tabelle alle Preisänderung seit bestehen der Datenbank vorhanden. Wenn ich die Datenbank mit einer andern Software verbinde, bekomme ich immer die Meldung Wert nicht eindeutig und gibt immer den ersten Preis raus. Also benötige ich eine Abfrage die mir nur den Aktuellesten  Preis des Artikel rausgibt.

 

Das Datum habe ich geschafft ins richtige Format zu bringen:

 

CREATE VIEW "V_Artikelpreis      " AS SELECT "Artikel" ."Nummer" "ArtikelNummer" ,"Artikel" ."Bez1" ,"Convert" (CAST ("AP" ."abdatum" -693596 AS "Datetime" ),"SQL_CHAR" ,4 )"AbDatum" ,"AP" ."VK1" "VK1" FROM "VKPreise" "AP" ,"Artikel" "Artikel" WHERE "Artikel" ."Nummer" = "AP" ."Artikel"

 

Diese Abfrage funktioniert einwandfrei. Jetzt müsste ich noch dies dahinter bekommen:

 

http://www.sql-und-xml.de/sql-praxis/detailtabelle-aggregatfunktion-einzelzeilen.html

 

Ich hoffe jemand kann mir helfen? Vielen Dank schon mal...

 

Gruss

 

 

 

 

Link zu diesem Kommentar

Mehr Infos:

 

Tabelle: V_Artikelpreis

Spalten: Artikelnummer, Bez1, abdatum, Vk1

 

Diese Daten bekomme ich nicht in die Zeilen eingefügt...

SELECT E.[Artikel-Nummer], E.[Artikel-Name],	A.Datum, A.[A-Preis]FROM (tbl_Artikel As E Inner Join tbl_Details As AON E.[Artikel-Nummer] = A.fkey) INNER JOIN	(SELECT B.fkey, Max(B.Datum) As [Max-Datum]	FROM tbl_Details As B	GROUP BY B.fkey) As CON A.fkey = C.fkey And	A.Datum = C.[Max-Datum]
bearbeitet von Tajakne
Link zu diesem Kommentar
  • 1 Monat später...

Moin,
 
als Anregung, die Abfrage
 

SELECT TOP 1 ArtikelNr, Preis
FROM T_Tabelle 
ORDER BY Datum DESC
WHERE Artikel = 4711

 
ergibt den gesuchten aktuellen Preis für _einen_ Artikel.
Das kann man z.B. in eine korrelierende Unterabfrage einbauen:
 

SELECT ArtikelNr, ( SELECT TOP 1 Preis 
                    FROM T_Tabelle B 
                    ORDER BY Datum DESC 
                    WHERE B.ArtikelNr = A.ArtikelNr
                  ) AS AktuellerPreis
FROM T_Tabelle A

 
Evtl. noch GROUP BY je nach Bedarf
 
Gruß Kai

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...