我正在使用下面的mysql来查看用户订阅。我需要得到所有用户,并在一所中显示,如果他们有一个活跃的认购或不mysql完全加入不能正常工作
这是我曾尝试:
SELECT `general`.`exchange`.`email`,substring_index(`general`.`exchange`.`name`, " ", 1) as name, `courses`.`courseSubscriptions`.`expiryTimestamp`
FROM `general`.`exchange`
LEFT JOIN `courses`.`courseSubscriptions`
ON `courses`.`courseSubscriptions`.`memberID` = `general`.`exchange`.`id`
WHERE (`courses`.`courseSubscriptions`.memberID = `general`.`exchange`.`id`)
AND (`courses`.`courseSubscriptions`.expiryTimestamp > 1443975741)
的问题是,它仅返回谁拥有用户订阅。我需要它返回所有用户,并显示在有订阅或不订阅的专栏
我该怎么做?
可以添加示例数据的几行对每个表,你希望得到的结果 – Phil
你的加入究竟是不是一个'完全加入'(MySQL不支持)。这是一个“左连接”。 –
也不要使用双引号作为字符串参数,总是使用单引号RDBM可能会错过解释。 @GordonLinoff的答案显示它已修复! –