Hallo.
Ik ben bezig met een sql-statement dat de minimale en maximale waarde uit een tabel haalt voor een bepaald type auto.
De tabel is als volgt ingedeeld (eenvoudige weergave):
carspecs (columns):
- serie: serie van de auto
- typenummer: typenummer van de auto
- yearbegin: begin bouwjaar
- yearend: eind bouwjaar (deze is 0 indien hij nog steeds gebouwd wordt)
- model: automodel
Met een sql statement wil ik per serie en type auto het minimale begin bouwjaar en het maximale eind bouwjaar weergeven, naar aanleiding van bovenstaande tabel zou deze dit moeten terugkeren:
serie 3, typenummer e46, yearbegin 1999, yearend 2007
maar het keert dit terug:
serie 3, typenummer e46, yearbegin 1999, yearend 2004
met behulp van deze code:
Mijn sql statement pakt dus de waarde van de auto met model 318 (dit heeft de hoogste max, namelijk 2004), maar ik wil dat hij 2007 terugkeert, aangezien er nog yearend velden op 0 staat (wat betekent dat deze nog wordt gebouwd).
Hoe is het mogelijk om deze de waarde van het huidige jaar te geven?
(bij onduidelijkheid; vraag
)
bedankt!
Ik ben bezig met een sql-statement dat de minimale en maximale waarde uit een tabel haalt voor een bepaald type auto.
De tabel is als volgt ingedeeld (eenvoudige weergave):
carspecs (columns):
- serie: serie van de auto
- typenummer: typenummer van de auto
- yearbegin: begin bouwjaar
- yearend: eind bouwjaar (deze is 0 indien hij nog steeds gebouwd wordt)
- model: automodel
| serie | typenummer | yearbegin | yearend | model |
|---|---|---|---|---|
| 3 | e46 | 1999 | 2003 | 316 |
| 3 | e46 | 1999 | 2004 | 318 |
| 3 | e46 | 2003 | 0 | 320 |
| 3 | e46 | 2004 | 0 | 325 |
Met een sql statement wil ik per serie en type auto het minimale begin bouwjaar en het maximale eind bouwjaar weergeven, naar aanleiding van bovenstaande tabel zou deze dit moeten terugkeren:
serie 3, typenummer e46, yearbegin 1999, yearend 2007
maar het keert dit terug:
serie 3, typenummer e46, yearbegin 1999, yearend 2004
met behulp van deze code:
SQL:
1
| SELECT serie, typenummer, MIN(yearbegin) as yearbegin, max(yearend) as yearend FROM carspecs GROUP BY serie, typenummer ORDER BY series, typenummer |
Mijn sql statement pakt dus de waarde van de auto met model 318 (dit heeft de hoogste max, namelijk 2004), maar ik wil dat hij 2007 terugkeert, aangezien er nog yearend velden op 0 staat (wat betekent dat deze nog wordt gebouwd).
Hoe is het mogelijk om deze de waarde van het huidige jaar te geven?
(bij onduidelijkheid; vraag
bedankt!
[ Voor 32% gewijzigd door BMWHeaven op 23-04-2007 00:50 . Reden: verduidelijking ]