Mijn vraag
Ik heb na wat zoeken deze geprobeerd:
De recordname wordt op php pagina via SELECT lijst gekozen, dus het is aanpasbaar via keuze.
De tabel member bestaat alleen uit gebruikers gegevens.
De tabel progress is soort logboek, alle stats worden verzameld, steeds elke dag (is met timestamp ingedeeld) en dus groot tabel. Maar ik heb alleen laatste timestamp record nodig uit progress omdat deze recente stat waarde heeft.
Het is bedoeling dat er kan gesorteerd op gekozen naam uit progress (dus recordnaam kolom) van hoog naar laag en als het gelijke waarde is, op member naam gesorteerd. De rest van progress waarden worden dus niet meegeteld in sorteren.
Helaas krijg ik nul waarde terug, dit moet alle gebruikers worden (tabel members is volledig) maar wordt gesorteerd aan de hand van uitkomst met progress waarde via gekozen record naam kolom.
Relevante software en hardware die ik gebruik
Het is voor website, geprogrammeerd met php en mysql.
Wat ik al gevonden of geprobeerd heb
Ik heb diverse oplossingen bekeken en deze leek me simpelste want het heeft mijn antwoord met soortgelijk voorbeeld, alleen dan aangepast naar mijn versie.
Helaas krijg ik nul antwoord terug, maar er is geen foutmelding via mysqli_error.
Het is niet goed te zien wat er mis is gegaan. Misschien moet het net anders, er is ook LEFT JOIN mogelijkheid dat ook bij sommige sites te lezen is als voorbeeld.
Ik denk dat ergens een klein foutje is. Maar welke is het?
Alvast dank.
Ik heb na wat zoeken deze geprobeerd:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| $query=" SELECT m.*, p.".$_POST['recordname']." FROM member m INNER JOIN progress p ON m.id = p.memberid INNER JOIN ( SELECT memberid, MAX(timestamp) maxdate FROM progress GROUP BY memberid ) b ON p.memberid = b.memberid AND p.timestamp = b.maxdate ORDER BY p.".$_POST['recordname']." DESC, m.name ASC"; |
De recordname wordt op php pagina via SELECT lijst gekozen, dus het is aanpasbaar via keuze.
De tabel member bestaat alleen uit gebruikers gegevens.
De tabel progress is soort logboek, alle stats worden verzameld, steeds elke dag (is met timestamp ingedeeld) en dus groot tabel. Maar ik heb alleen laatste timestamp record nodig uit progress omdat deze recente stat waarde heeft.
Het is bedoeling dat er kan gesorteerd op gekozen naam uit progress (dus recordnaam kolom) van hoog naar laag en als het gelijke waarde is, op member naam gesorteerd. De rest van progress waarden worden dus niet meegeteld in sorteren.
Helaas krijg ik nul waarde terug, dit moet alle gebruikers worden (tabel members is volledig) maar wordt gesorteerd aan de hand van uitkomst met progress waarde via gekozen record naam kolom.
Relevante software en hardware die ik gebruik
Het is voor website, geprogrammeerd met php en mysql.
Wat ik al gevonden of geprobeerd heb
Ik heb diverse oplossingen bekeken en deze leek me simpelste want het heeft mijn antwoord met soortgelijk voorbeeld, alleen dan aangepast naar mijn versie.
Helaas krijg ik nul antwoord terug, maar er is geen foutmelding via mysqli_error.
Het is niet goed te zien wat er mis is gegaan. Misschien moet het net anders, er is ook LEFT JOIN mogelijkheid dat ook bij sommige sites te lezen is als voorbeeld.
Ik denk dat ergens een klein foutje is. Maar welke is het?
Alvast dank.