Mysql geldige prijs ophalen

Status
Niet open voor verdere reacties.

harolda1980

Gebruiker
Lid geworden
7 aug 2007
Berichten
488
Ik heb een tabel die in basis bestaat uit een ID, Prijs, Ingangsdatum, ArtID

ArtID = Artikel koppeling
Ingangsdatum = bijvoorbeeld vandaag

Wat ik dan zoek is hoe ik kan zoeken of er een prijs is die geldig is.

1 / 5,5 / 09-07-2014, 1
2 / 6,5 / 09-09-2014, 1
3 / 7,5 / 30-09-2014, 1
4 / 5,5 / 09-11-2014, 1

Ik moet dus eigenlijk uitkomen bij de 3 rij.
Kan iemand mij helpen met deze query?
 
Wanneer wordt een prijs als geldig gezien? Als de datum voor vandaag ligt?
 
hij is geldig als er geen prijs voorzit die binnen die datum valt.
In het voorbeeld is de prijs van 09-11-2014 eentje die nog moet komen.

Dus ja hij moet voor vandaag liggen.
 
[SQL]
SELECT
*
FROM
tabel
WHERE
Ingangsdatum < NOW()[/sql]

Levert dat het gewenste resultaat op?
 
Klopt maar wat doe je nu als je altijd ook de oudere regels mee krijgt. En juist die niet mee wil krijgen.
 
Ik heb ze geen van beide getest maar hier 2 mogelijke oplossingen :

Code:
SELECT
    MAX(ingangsdatum)
FROM
    tabel
WHERE
    Ingangsdatum < NOW()

Code:
SELECT
    *
FROM
    tabel
WHERE
    Ingangsdatum < NOW() ORDER BY ingangsdatum ASC LIMIT 1
 
Klopt maar wat doe je nu als je altijd ook de oudere regels mee krijgt. En juist die niet mee wil krijgen.

Dan moet je een extra voorwaarde in je query opnemen :)

Je kunt ook het aantal resultaten "hard" beperken door te zeggen dat je 10 resultaten, gesorteerd op aflopende ingangsdatum, wilt die een ingangsdatum hebben welke eerder is dan vandaag
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan