如果存在特定记录,则需要返回1,否则在MySQL中返回0

时间:2019-05-30 08:54:03

标签: exists case-when

我正在尝试列出一个列表,该列表显示我们的经销商对我们系统中特定页面的访问次数,并按经销商和用户分组。我还希望有一列显示1,如果该经销商的另一个表中存在记录,则显示1,否则显示0。

我很困在这里,曾经考虑过CASE WHENs和使用IF EXISTS,但无法弄清楚它们的适用范围。

SELECT    
d.id AS dealer_id, d.name, du.id AS user_id, du.title, COUNT(dpv.id) AS 
hmrc_page_visits
FROM
dms_page_visits dpv
INNER JOIN dealers d ON dpv.dealer_id=d.id
INNER JOIN menus m ON dpv.menu_id=m.id
INNER JOIN dealer_users du ON dpv.user_id=du.id
WHERE
m.id IN (322,344)
AND d.`status` IN ('active','new')
AND du.id != 0
GROUP BY d.id, du.id
LIMIT 200    

这是一个查询,用于查找经销商和用户的页面访问次数以及我希望对其进行修改以包含“真/假”列的页面访问次数。

任何帮助都将不胜感激。

0 个答案:

没有答案