• Login
  • Register
  • Zoek
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • More Options

ICTscripters

Dé plek voor IT

Dé plek voor IT

Login

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • Beta-testers gezocht voor Crypto-oefenplatform

    Syntax 29 januari 2026 om 16:11
  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Syntax 19 januari 2026 om 09:34
  • Developer Gezocht

    Mikevdk 10 januari 2026 om 18:57
  • Op zoek naar de legends

    Syntax 5 januari 2026 om 13:50
  • [FREE] WeFact Hosting module

    Jeroen.G 13 oktober 2025 om 14:09
  • Help testers nodig voor android app Urgent

    urgentotservices 26 september 2025 om 10:21
  • Versio vervanger

    Jeroen.G 25 augustus 2025 om 15:56
  • Afspraken systeem met planbeperking

    Lijno 1 augustus 2025 om 23:04

Marktplaats

  • 350 Nieuwe Domeinnamen Januari 2026

    shiga 1 februari 2026 om 14:21
  • 321 Nieuwe Domeinnamen December 2025

    shiga 1 januari 2026 om 10:26
  • Meerdere mafia game template te koop

    Syntax 26 december 2025 om 00:07

[SQL] selecteer 1 post van meerdere gebruikers uit 1 tabel

  • sjaakmans
  • 7 april 2016 om 18:28
  • sjaakmans
    Beginner
    Ontvangen Reacties
    8
    Berichten
    40
    • 7 april 2016 om 18:28
    • #1

    Hallo,


    Ik kom er even niet uit en ik hoop dat jullie mij verder kunnen helpen.

    Ik heb op dit moment een tabel in mijn database die bestaat uit posts. Iedere post is gekoppeld aan een gebruiker. Nu wil ik per gebruiker 1 willekeurige post laten zien. Maar let op! Het moet van alle gebruikers uit die tabel zijn en het moet ook echt een willekeurige zijn, dus niet alleen de volgorde.

    Hebben jullie een idee? Ik ben al met group by aan de gang geweest maar dat schiet niet op. Ook een subquery helpt totaal niet.

    Mijn tabel ziet er uit als volgt:

    Code
    +----+------------+---------------+
    | id | profile_id | title         |
    +----+------------+---------------+
    | 1  | 1          | titel         |
    | 2  | 1          | titel 2       |
    | 3  | 2          | nog een titel |
    | 4  | 10         | laatste titel |
    +----+------------+---------------+

    Alvast bedankt!

  • Guest, wil je besparen op je domeinnamen? (ad)
  • Luc
    Software Engineer
    Ontvangen Reacties
    44
    Berichten
    1.986
    • 7 april 2016 om 18:36
    • #2

    Misschien iets aan order by RAND()?

    Website: https://devimo.nl
    Skype: https://join.skype.com/invite/dJyYILTt7Eqh

  • sjaakmans
    Beginner
    Ontvangen Reacties
    8
    Berichten
    40
    • 7 april 2016 om 18:43
    • #3

    Ja RAND() heb ik heel veel aan, maar nu nog niet ;). Ik moet namelijk van alle gebruikers in die tabel willekeurig een post hebben.

    Ik wil dus 3 rijen terug krijgen en gezien de data die ik heb gepost zou de rij van de gebruiker met id 1 af en toe moeten wijzigen (inderdaad door RAND()).

  • Thisguyisgone
    Elite members
    Ontvangen Reacties
    197
    Berichten
    7.880
    • 7 april 2016 om 20:39
    • #4

    Je hebt alleen maar RAND nodig en een limit ;).

  • Luc
    Software Engineer
    Ontvangen Reacties
    44
    Berichten
    1.986
    • 7 april 2016 om 21:18
    • #5

    Ik denk zoiets:

    SELECT * FROM user
    LEFT JOIN (SELECT * FROM posts where user.id=posts.profile_id GROUP BY profile_Id ORDER BY RAND() LIMIT 1) AS p ON(p.profile_id=user.id)
    GROUP BY user.id

    Niet getest, maar aan zoiets zou ik denken

    Website: https://devimo.nl
    Skype: https://join.skype.com/invite/dJyYILTt7Eqh

  • sjaakmans
    Beginner
    Ontvangen Reacties
    8
    Berichten
    40
    • 7 april 2016 om 21:53
    • #6

    @Ferhat.Remory, daar had ik ook al aan gedacht maar dan kom ik er niet :(

    @Luc, helaas werkt dat niet. Er wordt een veld aangeroepen in het FROM gedeelte, MySQL kan hier niet mee overweg. Dat zou wel veel problemen oplossen ;)

    Ik heb bedacht dat ik misschien maar eens moet kijken naar een MySQL functie die het regelt voor mij.

  • Luc
    Software Engineer
    Ontvangen Reacties
    44
    Berichten
    1.986
    • 7 april 2016 om 22:09
    • #7

    Als het om een gereserveerd keyword gaat. Dan kan je overwegen om `posts` te doen bijvoorbeeld dus backticks/backquotes gebruiken bij gereserveerde sql namen.

    Verstandiger is dan om het veldnaam of tabel van naam te veranderen maar goed.

    Website: https://devimo.nl
    Skype: https://join.skype.com/invite/dJyYILTt7Eqh

  • sjaakmans
    Beginner
    Ontvangen Reacties
    8
    Berichten
    40
    • 8 april 2016 om 08:09
    • #8

    Nee is niet een gereserveerd keyword. Maar het komt dat je in de FROM een select wilt doen met een andere tabel die je ook aanroept in de FROM, dat werkt dus niet.

  • FangorN
    Professional
    Ontvangen Reacties
    196
    Articles
    2
    Berichten
    737
    • 9 april 2016 om 16:12
    • #9

    Even los van wat je probeert te bereiken, wat is het *nut* van deze query? Als het de laatste post van alle individuele gebruikers zou zijn zou ik dit nog enigzins snappen, maar een willekeurige?

  • Luc
    Software Engineer
    Ontvangen Reacties
    44
    Berichten
    1.986
    • 9 april 2016 om 17:50
    • #10

    Ik ben 5 minuten voor je bezig geweest om met behulp met mijn query die ik je eerder gaf een werkende query te maken.

    Paar tips:
    1) Verwijder de where clausule, group by en limit uit de left join.
    2) Test hem nogmaals

    Dit had je natuurlijk zelf ook wel even kunnen proberen natuurlijk..

    Website: https://devimo.nl
    Skype: https://join.skype.com/invite/dJyYILTt7Eqh

  • FangorN
    Professional
    Ontvangen Reacties
    196
    Articles
    2
    Berichten
    737
    • 9 april 2016 om 20:41
    • #11

    @Luc volgens mij krijg je dan elke keer dezelfde "random" posts. Ook wordt je subquery dan nogal zwaar?

    Misschien zou je dit ook op een andere manier kunnen oplossen (caching? redundant opslaan?) maar je zou je ook kunnen afvragen wat je nou eigenlijk met zo'n query wilt...

  • sjaakmans
    Beginner
    Ontvangen Reacties
    8
    Berichten
    40
    • 11 april 2016 om 21:53
    • #12

    Ik moet willekeurige posts weergeven op een homepagina. Maar het mag er maximaal 1 zijn per gebruiker. En die posts moeten willekeurig zijn.

    Ik heb het misschien ingewikkeld opgelost, maar heb een MySQL procedure gemaakt.

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!

Maak een account aan Login

ICT Nieuws

  • Fijne feestdagen

    tcbhome 28 december 2025 om 13:55
  • Kritieke update voor Really Simple Security-plug-in

    K.Rens 16 november 2024 om 16:12
  • ING Nederland streeft naar ondersteuning van Google Pay tegen eind februari

    K.Rens 2 november 2024 om 16:09

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacy Policy
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design