alleen hoogste waarde laten zien
Ik wil uit een tabel uit mijn database gegevens halen en van deze gegevens (biedingen) alleen het laatste (=hoogste) bod laten zien.
Tabel ziet er als volgt uit:
------------------------------
- Bod_id (sleutel)
- Veiling_id
- id
- Bod
- Datum_bod
De query die ik gebruik ziet er als volgt uit:
----------------------------------------------------
SELECT Veiling_id, Bod_id, Datum_bod, Bod FROM biedingen WHERE id = 27 GROUP BY Veiling_id, Bod, Datum_bod, Bod_id ORDER BY Datum_bod DESC
Dit geeft als resultaat ALLES uit de tabel weer. Ik wil echter van iedere (unieke) veiling_id het LAATSTE (= hoogste) bod zien. Ik heb al van alles geprobeerd, maar het mocht niet baten.
Wat heb ik geprobeerd:
----------------------------
- DISTINCT -> Werkt over de hele query en de weergegeven resultaten (ook wat ik niet wil zien) is uniek.
- Variaties met GROUP BY
- Variaties met MAX
Ik ben even door de ideeën heen. PLZ help. Hierbij ook een linkje naar het resultaat wat het dus niet moet zijn:
http://78.157.195.10/~k3ng/DuivenSite/plz_help.JPG
SELECT Veiling_id, Bod_id, Datum_bod, MAX(Bod) As Bod FROM biedingen WHERE id = 27 GROUP BY Veiling_id, Datum_bod, Bod_id
begin tabel:
Code (php)
1
2
3
4
5
6
2
3
4
5
6
veiling ID || Bod_ID || Datum-Bod || Bod
81 || 1 || 23-03-2009 || 15
81 || 2 || 23-03-2009 || 20
81 || 3 || 23-03-2009 || 25
82 || 4 || 23-03-2009 || 50
82 || 5 || 23-03-2009 || 60
81 || 1 || 23-03-2009 || 15
81 || 2 || 23-03-2009 || 20
81 || 3 || 23-03-2009 || 25
82 || 4 || 23-03-2009 || 50
82 || 5 || 23-03-2009 || 60
Na de max en group by:
Code (php)
1
2
3
2
3
veiling ID || Bod_ID || Datum-Bod || Bod
81 || 3 || 23-03-2009 || 25
82 || 5 || 23-03-2009 || 60
81 || 3 || 23-03-2009 || 25
82 || 5 || 23-03-2009 || 60
Na datum_bod en bod_id
Dan heb je dus alsnog niet het juiste resultaat
Ik heb het nog niet voor elkaar kunnen krijgen. Iemand nog ideeën?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
SELECT
Veiling_id,
Bod_id,
Datum_bod,
Bod
FROM
biedingen
WHERE
id = 27
ORDER BY
Bod DESC
LIMIT 1
Veiling_id,
Bod_id,
Datum_bod,
Bod
FROM
biedingen
WHERE
id = 27
ORDER BY
Bod DESC
LIMIT 1
Probeer dat eens? Ben niet zeker, maar dat zou toch al een resultaat in de buurt moeten geven....
Gewijzigd op 01/01/1970 01:00:00 door Jens V