sql >> Base de Datos >  >> RDS >> Mysql

Sumar la suma de 2 tablas diferentes

Recomiendo encarecidamente normalize sus datos como otros sugirieron.

Según su diseño actual, puede usar FIND_IN_SET para lograr el resultado que desea.

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

Ver demostración

Al ejecutar esta consulta en su conjunto de datos dado, obtendrá un resultado como el siguiente:

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

Una lectura obligada

¿Es realmente tan malo almacenar una lista delimitada en una columna de base de datos?

Más

Así es como tus vidoes la tabla se vería si normalizas tus datos:

videos

id   member_id