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

Cómo escribir una declaración de selección usando una unión anidada

Su consulta de error que se espera ya que tiene dos WHERE cláusula y USER es una palabra clave y no debe usarse como identificador. Los he escapado usando backtique, mejor use una palabra que no sea clave / reserva como su nombre de columna. Su consulta debería verse como

SELECT COUNT(u.user_id) FROM `USER` u
INNER JOIN USAGE us on us.user_id = u.user_id
JOIN PRODUCT p ON us.product_id = p.product_id
WHERE p.product = 'iPhone'
AND u.usage_count > 0
AND u.account_created <= '2016-12-31'
AND u.account_created >= '2016-01-01'