Hallo Ich habe eine Tabelle mit Spalten J1, J2, J3, J4, J5, J6, J7. Ich möchte die größten 3 Werte aus diesen Spalten als L1, L2, L3 finden.Wie finde ich erste, zweite und drittgrößte Werte aus verschiedenen Spalten in SQL
habe ich versucht, die unter Abfrage der erste größte
SELECT (
SELECT Max(v) FROM (
VALUES
([J1]), ([J2]),
([J3]), ([J4]),
([J5]), ([J6]),
([J7])
) AS value(v)
) as [L1]FROM dbo.JTable
Befindet sich ein PK in der Tabelle? –
PL/SQL ist die Sprache von Oracle für gespeicherte Prozeduren. SQL Server ist ein völlig anderes DBMS. Also, was benutzt du wirklich? Oracle oder SQL Server? Aus dem Beispiel zu schließen, ist es SQL Server und nicht Oracle –
Im Allgemeinen ein Zeichen eines gebrochenen Datenmodells - alle Werte des gleichen "type" (so dass es sinnvoll ist, zwei solche Werte zu vergleichen oder Aggregate auf ihnen zu berechnen) sollte sein * eine * Spalte. Und dann sollte es eine zusätzliche Spalte geben, wenn die Zahlen 1-7 tatsächlich aussagekräftig sind * Daten *, die in Ihren Spaltennamen eingebettet sind. –