Ik heb twee tabellen
- users : uid, ...
- mails : mid, user_id, ...
Ik wil alle users uit mijn tabel users halen en per user het aantal mails uit mijn tabel mails.
Ik heb even rond gezocht op het internet maar vond niet direct een gelijkaardig probleem
Dit was mij eigen poging :
Als resultaat krijg ik 1 user met alle het totaal aantal mails.Code:SELECT uid, COUNT(mid) AS num_mails FROM users, mails WHERE mails.user_id = users.uid ORDER BY num_mails'
Iemand die me even zou kunnen helpen ?
Alvast bedankt,
Peter
- SQL 2 tabellen COUNT
-
30-12-2009, 07:00 #1
- Berichten
- 20
- Lid sinds
- 16 Jaar
SQL 2 tabellen COUNT
-
30-12-2009, 08:15 #2Reinschaap Punt NL
- Berichten
- 936
- Lid sinds
- 17 Jaar
bedoel je dit?
SELECT user_id,COUNT(mid) as aantal from mails group by user_id order by aantal desc
dat geeft terug ongeveer dit:
uid aantal
3 2
2 1
1 1Laatst aangepast door Rein S : 30-12-2009 om 08:52
-
30-12-2009, 08:53 #3
- Berichten
- 20
- Lid sinds
- 16 Jaar
SELECT uid, COUNT(mid) AS num_mails FROM users, mails WHERE users.uid = mails.user_id GROUP BY uid ORDER BY num_mails DESC
Doet het, ik moest dus GROUP BY uid toevoegen
Maar gebruikers die geen mails hebben ingevuld, worden met deze query niet weergegeven. Waar zou dat aan liggen ?
-
30-12-2009, 08:58 #4Reinschaap Punt NL
- Berichten
- 936
- Lid sinds
- 17 Jaar
omdat die niet in mails voorkomen, dat probeer ik nog te zoeken...
Aanvullend bericht:
ik denk een union select, dus dat zit ik nu te testen.... ik heb de tabellen ook ff aangemaakt om te pielen
Aanvullend bericht:
SELECT uid,count(mails.mid) as aantal
FROM users
LEFT JOIN mails
ON users.uid=mails.user_id group by uidLaatst aangepast door Rein S : 30-12-2009 om 09:11 Reden: Automatisch samengevoegd.
-
30-12-2009, 09:12 #5Particulier
- Berichten
- 146
- Lid sinds
- 16 Jaar
SELECT uid, COUNT( mid ) AS TOTAL
FROM users AS a
LEFT JOIN mails AS b ON b.user_id = a.uid
GROUP BY uid
ORDER BY TOTAL DESC
happy new year
-
30-12-2009, 09:32 #6
- Berichten
- 20
- Lid sinds
- 16 Jaar
LEFT JOIN gaat inderdaad ook.
Ik weet niet of je die andere users (die dus inderdaad niet in die andere tabel voorkomen) er ook nog uit kunt krijgen.
Bedankt trouwens allebei.
@Marsmania Ook een gelukkig nieuwjaar voor jou :)
-
02-01-2010, 20:03 #7Particulier
- Berichten
- 377
- Lid sinds
- 18 Jaar
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic