sql >> Database >  >> RDS >> Mysql

Optellen uit 2 verschillende tabellen

Ik zou sterk aanraden om normalize uw gegevens zoals anderen hebben voorgesteld.

Op basis van je huidige ontwerp kun je FIND_IN_SET om het gewenste resultaat te bereiken.

SELECT 
 M.id,
 M.name,
 COUNT(*) total
FROM members M 
INNER JOIN videos V ON FIND_IN_SET(M.name,V.members) > 0
GROUP BY M.name
ORDER BY M.id

Bekijk demo

Als u deze query uitvoert op uw gegeven dataset, krijgt u de onderstaande output:

| id |  name | total |
|----|-------|-------|
|  1 |   Tom |     2 |
|  2 |   Bob |     2 |
|  3 |  Zack |     3 |
|  4 |   Dan |     3 |
|  5 | Casey |     2 |

Een must om te lezen

Is het echt zo erg om een ​​gescheiden lijst in een databasekolom op te slaan?

Meer

Dit is hoe je vidoes tabel eruit zou zien als u uw gegevens normaliseert:

vidoes

id   member_id


  1. PHP MySQL Delete-functie in while-lus

  2. ImportError:Geen module met de naam mysql.base, in django-project op Ubuntu 11.04-server

  3. Kan geen verbinding maken met MySQL Workbench op mac. Kan geen verbinding maken met MySQL-server op '127.0.0.1' (61) Mac Macintosh

  4. MySQL Sum-kolom IF ID is in een andere tabelquery