That Guy
Meubilair
- Lid geworden
- 28 nov 2006
- Berichten
- 5.010
Hallo allemaal,
Ik ben bezig met een stukje forum-software in PHP. Nu is het idee om zo min mogelijk queries te gebruiken, dus was ik van plan een mooie JOIN te gebruiken om meerdere queries tot een te maken.
Dit zijn de originele queries:
users.id, users.name, users.rank, users.avatar,users.country,
ranks.title,
COUNT(reputation.to_user) as reptouser
FROM posts
LEFT JOIN users ON users.id = posts.user_id
LEFT JOIN ranks ON ranks.id = users.rank
LEFT JOIN reputation ON reputation.to_user = users.id
WHERE posts.id = 2[/SQL]alleen ik krijg een error; er zit een fout:
Ik snap wat er staat; maar mijn SQL kennis is niet zo heel goed, en volg niet waarom er een GROUP BY in moet om de COUNT() te laten werken. Wie o wie kan mij vertellen wat er fout gaat, of nog beter, hoe deze wel gaat werken?
:thumb:
Ik ben bezig met een stukje forum-software in PHP. Nu is het idee om zo min mogelijk queries te gebruiken, dus was ik van plan een mooie JOIN te gebruiken om meerdere queries tot een te maken.
Dit zijn de originele queries:
en dit was mn idee:[SQL]SELECT posts.user_id, posts.time, posts.text,[SQL]SELECT user_id, time, text
FROM posts
WHERE id = 2[/SQL]
[SQL]ELECT ranks.title, users.id, users.name, users.rank, users.avatar, users.membersince, users.country
FROM users
LEFT JOIN ranks ON users.rank = ranks.id
WHERE users.id = "hier t user_id uit vorrige query"[/SQL]
[SQL]SELECT count(to_user) as count
FROM reputation
WHERE to_user = "hier t user_id uit 1e query"[/SQL]
users.id, users.name, users.rank, users.avatar,users.country,
ranks.title,
COUNT(reputation.to_user) as reptouser
FROM posts
LEFT JOIN users ON users.id = posts.user_id
LEFT JOIN ranks ON ranks.id = users.rank
LEFT JOIN reputation ON reputation.to_user = users.id
WHERE posts.id = 2[/SQL]alleen ik krijg een error; er zit een fout:
Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
Ik snap wat er staat; maar mijn SQL kennis is niet zo heel goed, en volg niet waarom er een GROUP BY in moet om de COUNT() te laten werken. Wie o wie kan mij vertellen wat er fout gaat, of nog beter, hoe deze wel gaat werken?
:thumb:
Laatst bewerkt: