SQL Befehl Datumszuordnung

a_n_j_a

Neuer Benutzer
Beiträge
3
Hallo,

ich hab mal ne Frage, die da ansetzt, wo meine SQL-Fähigkeiten wieder aufhören.:p
Ich habe zwei Tabellen. Das Bestelldatum der ersten soll über WährungsID (PK) mit dem nähesten davorliegenden Währungskursdatum der zweiten zugeordnet werden.
Heißt... das Bestelldatum soll den Währungskurs zur Berechnung bekommen, der zu der Zeit gegolten hat.
Jemand ne Idee?

Danke und Gruß,
Anna
 
Werbung:

akretschmer

Datenbank-Guru
Beiträge
9.042
Hallo,

ich hab mal ne Frage, die da ansetzt, wo meine SQL-Fähigkeiten wieder aufhören.:p
Ich habe zwei Tabellen. Das Bestelldatum der ersten soll über WährungsID (PK) mit dem nähesten davorliegenden Währungskursdatum der zweiten zugeordnet werden.
Heißt... das Bestelldatum soll den Währungskurs zur Berechnung bekommen, der zu der Zeit gegolten hat.
Jemand ne Idee?

Danke und Gruß,
Anna

Etwa so:

Code:
test=*# select * from verkauft;
 waehrung |    ware     |   datum
----------+-------------+------------
        1 | regenschirm | 2013-06-01
        1 | sonnenhut   | 2013-05-01
(2 rows)

test=*# select * from kurs ;
 waehrung |   datum    | kurs
----------+------------+------
        1 | 2013-05-31 |   10
        1 | 2013-04-30 |   15
(2 rows)

test=*# select *, (select kurs from kurs where datum < verkauft.datum limit 1) from verkauft ;
 waehrung |    ware     |   datum    | kurs
----------+-------------+------------+------
        1 | regenschirm | 2013-06-01 |   10
        1 | sonnenhut   | 2013-05-01 |   15
(2 rows)

Andreas
 

ukulele

Datenbank-Guru
Beiträge
4.394
In MS SQL müsste man mit (SELECT TOP 1 kurs FROM kurs WHERE datum < verkauft.datum) arbeiten und Sinn macht es eigentlich nur in Verbindung mit ORDER BY.
 
Werbung:
Oben