Hulp Hoogste bieder uit database halen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Arthur Maenhout

Arthur Maenhout

01/05/2014 14:37:23
Quote Anchor link
Kan er iemand mij helpen? ik probeer om de persoon met het hoogste bod uit mijn database te halen maar ik krijg alleen de persoon die de eerste keer op het product heeft geboden

dit is mijn sql
Quote:
SELECT tblbieden.Productnummer, tblgebruikers.Gebruikersnaam, tblbieden.Gebruikersnummer, tblproduct.Productnaam, tblbieden.Datum, MAX( tblbieden.Bedrag ) AS Bedrag
FROM tblbieden
INNER JOIN tblproduct ON tblproduct.productnummer = tblbieden.productnummer
INNER JOIN tblgebruikers ON tblbieden.gebruikersnummer = tblgebruikers.gebruikersnummer
GROUP BY Productnummer
 
PHP hulp

PHP hulp

17/11/2024 02:41:44
 
Ivo P

Ivo P

01/05/2014 16:09:24
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
SELECT tblbieden.Productnummer, tblgebruikers.Gebruikersnaam, tblbieden.Gebruikersnummer, tblproduct.Productnaam, tblbieden.Datum, MAX( tblbieden.Bedrag ) AS Bedrag
FROM tblbieden
INNER JOIN tblproduct ON tblproduct.productnummer = tblbieden.productnummer
INNER JOIN tblgebruikers ON tblbieden.gebruikersnummer = tblgebruikers.gebruikersnummer
GROUP BY
  tblbieden.Productnummer,
  tblgebruikers.Gebruikersnaam,
  tblbieden.Gebruikersnummer,
  tblproduct.Productnaam,
  tblbieden.Datum


Dat zou je de hoogste biedingen per gebruiker en per product op die datum moeten geven.
 
Arthur Maenhout

Arthur Maenhout

01/05/2014 17:46:14
Quote Anchor link
het probleem blijf.. ik vond ondertussen wel dit
Quote:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php SELECT tblbieden.Productnummer, tblgebruikers.Gebruikersnaam, tblbieden.Gebruikersnummer, tblproduct.Productnaam, tblbieden.Datum, MAX( tblbieden.Bedrag ) AS Bedrag
FROM tblbieden
INNER JOIN tblproduct ON tblproduct.productnummer = tblbieden.productnummer
INNER JOIN tblgebruikers ON tblbieden.gebruikersnummer = tblgebruikers.gebruikersnummer
GROUP BY tblgebruikers.Gebruikersnaam, tblproduct.Productnaam

LIMIT 0 , 30 ?>


maar krijg dit resultaat:
Productnummer Gebruikersnaam Gebruikersnummer Productnaam Datum Bedrag
1 arthur.maenhout 1 Iphone 5 2014-02-26 22:10:01 170.00
1 jonathan.lips 2 Iphone 5 2014-02-26 22:13:42 530.00
2 jonathan.lips 2 Fiets 2014-02-26 22:13:58 215.00
3 arthur.maenhout 1 Bureau 2014-02-26 22:10:13 60.00
4 arthur.maenhout 1 Lamp 2014-05-01 12:02:11 35.00
4 jonathan.lips 2 Lamp 2014-05-01 12:18:19 45.00

ik krijg dus 2 producten nog altijd 2 maal
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

01/05/2014 18:01:31
Quote Anchor link
Je moet eerst bepalen wat de hoogste bieding per product is, en daarna ga je de zelfde table joinen om de bijhorende gebruiker te achterhalen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
SELECT
    sb.productnummer,
    g.gebruikersnaam,
    b.bedrag
FROM
    (SELECT productnummer, MAX(bedrag) bedrag
     FROM tblbieden
     GROUP BY productnummer) sb
JOIN
    tblbieden b
    ON sb.productnummer = b.productnummer AND sb.bedrag = b.bedrag
JOIN
    gebruikers g
    ON b.gebruikersid = g.gebruikersid
Gewijzigd op 01/05/2014 18:02:01 door Ger van Steenderen
 
Arthur Maenhout

Arthur Maenhout

01/05/2014 18:13:56
Quote Anchor link
Dit werkt bijna perfect danku
uw antwoord heeft zeer veel punten opgeleverd voor mijn eindproef van zesde middelbaar

nog een vraagje, als ik nu ook de productnaam wil tonen waar moet ik dit dan zetten in de code?
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

01/05/2014 18:26:42
Quote Anchor link
De tabel producten erbij joinen op het productnummer en de productnaam aan de select list toevoegen
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.