感谢另一位用户,我终于可以使用此查询收集一些数据了:
SELECT r.form, s.value as email
FROM subrecords s join
records r
on s.record = r.id AND r.name = 'question-form'
WHERE s.title = 'email'
GROUP BY s.value, r.form
可在Finding duplicates in MYSQL table where data is in multiple tables (multiple conditions needed)
找到上述查询中涉及的表格的详细信息通过上述查询,我获得了提交特定表单的电子邮件列表。
我现在需要找出哪些电子邮件地址订阅了特定邮件列表,使用上面查询列出电子邮件地址的“s.value”
我首先需要找出subscriber.subid,它标识每个唯一订阅者及其电子邮件地址,这是我将加入上述查询结果的地方
表格 - >订户模式
subid |电子邮件
然后从下表中选择WHERE listid = '33'
表格 - > listsub schema
listid | subid |子句| unsubdate |状态
非常感谢大家的不可思议的帮助!
答案 0 :(得分:1)
这是一种做更多联接的方法:
SELECT r.form, s.value as email,
(case when max(l.listid is not null) then 'YES' else 'NO' end) as InList33
FROM subrecords s join
records r
on s.record = r.id AND r.name = 'question-form' left outer join
subscriber_schema ss
on ss.email = s.value left outer join
listsub l
on ss.subid = l.subid and
l.listid = '33'
WHERE s.title = 'email'
GROUP BY s.value, r.form;