$select = mysql_query("SELECT * FROM questions INNER JOIN answers ON (questions.questions_id = answers.users_id) INNER JOIN users ON (users.users_id = answers.users_id)");

ik heb een query die per users de ingevulde vragen en de antwoorden list. Hoe zou ik in deze query kunnen groeperen zodat ik de users zie, daaronder hun vragen en antwoorden..

Hm. heb weinig ervaring met query's. heb er mij zitten op doodstaren op de query hierboven.. kheb die gecopy-paste en aangepast naar de velden in mijn db. maar toch komt hij false uit .. snap het niet
Ja, dus je query bevat een fout.

Wat je nu best doet, is even php vergeten en deze query te testen in phpMyadmin.
Je hebt ook niets van php-variabelen die verwerkt zijn in je query, dus je kan die query gewoon copy/pasten in phpMyadmin.
Daar krijg je dan een uitgebreidere foutmelding.
Zal dat proberen! bedankt!

[size=xsmall]Toevoeging op 11/09/2012 13:09:21:[/size]

Syntax is juist nu, er ontbrak een komma hier

u.users_name,
u.users_id,
q.questions_name,

Probeer de query eerst eens in PHPMyAdmin (of een andere tool uit), kan je zien waar de fout is. Overigens moet je altijd controleren of de query wel of je query wel of niet gelukt is.

[edit]
Te laat.
[/edit]
O ja, juist.

Zeg ... mijn reactie zou zijn om het zo te doen:

SELECT
    u.user_name AS user_name,
    u.user_id AS user_id,
    q.question_name AS question_name,
    a.answer_body AS answer_body
FROM
    answers AS a
INNER JOIN
    users AS u      ON u.user_id = a.user_id
INNER JOIN
    questions AS q  ON q.question_id = a.question_id
ORDER BY
    user_id, question_id


Bij de FROM eerst de tabel zetten die de connectie maakt tussen de andere tabellen.
Ik denk dat dat iets duidelijker is, om uit te kunnen aan die JOIN'S. Misschien is het vooral een kwestie van smaak. (Iemand hier een mening over?)
Ik denk dat het inderdaad meer een kwestie van smaak is. in mijn logica is een koppeltabel geen sourcetabel.

Wat geen kwestie van smaak is, is jouw gebruik van aliassen op kolomnamen.
Je geeft dezelfde alias als de kolomnaam dus daarmee is de alias volledig overbodig.
Ja, die aliasen ... meer een kwestie van "better safe than sorry", van mijn kant.

Reageren