查询真的很糟糕:(我在获取查询结果时遇到问题。
场景:我有两个表,在第一个表中我保存了用户活动详细信息,第二个表用于保存其他用户输入的所有活动的用户功能。
我需要的是获取类似值,无论当前登录用户是否已经喜欢活动。我需要某种布尔值。
用于存储活动的表格
存储计数表
我需要检查明确登录用户的明确活动,例如支票。 尝试查询:
SELECT at.id,
CASE WHEN lk.status =1 and lk.user_id = 6
THEN 1
ELSE 0
END AS l
FROM activity_transactions at
LEFT JOIN likes lk ON at.id = lk.activity_transaction_id
输出我得到重复 -
伙计们有什么解决方案? 问题是,我得到重复的行。如果用户喜欢其他活动行,我需要检查1
答案 0 :(得分:2)
尝试使用此查询
SELECT at.id,
CASE WHEN lk.status =1 and lk.user_id = 6 THEN 1 ELSE 0 END AS l
FROM activity_transactions at
LEFT JOIN likes lk ON at.id = lk.activity_transaction_id
group by at.id, l
上面的输入表格对我有用