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

Tabla de ACTUALIZACIÓN mySQL basada en SELECCIÓN (recuento) de una tabla diferente

Editar :¿Qué tal esto?:

UPDATE SUBJECT
LEFT JOIN (
SELECT count(*) AS num, subject_id
FROM class
GROUP BY subject_id
where date_time > NOW()) AS t ON SUBJECT.subject_id = t.subject_id
SET SUBJECT.current_class_count = coalesce( t.num, 0 )

Siempre que lo haya escrito correctamente, básicamente debería poder ejecutar esto una vez por hora y actualizará su tabla SUBJECT.

Unirse a una tabla en una instrucción UPDATE es un poco diferente en MySQL en comparación con Microsoft SQL. Aquí hay un enlace al respecto:

http://blog.ookamikun.com/2008/03 /mysql-update-with-join.html