我一直在学习如何使用嵌套连接,但我似乎无法让它们适用于我当前的数据库。
我想首先了解有多少用户至少使用了一次(他们的帐户有几分钟),2016年创建了他们的帐户,并在2013年使用了iPhone。 我试过这会产生错误:
SELECT COUNT(user_id) FROM USER
WHERE usage_count > 0
AND account_created <= ‘2016-12-31’
AND account_created >= ‘2016-01-01’
INNER JOIN PRODUCT
WHERE product = 'iPhone';
答案 0 :(得分:1)
由于您有两个WHERE
子句和USER
,因此您的查询错误预期是关键词,不应该用作标识符。我使用backtique转义它们更好地使用非键/保留字作为列名。您的查询应该看起来像
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'