gpt4 book ai didi

mysql - 显示一个表的结果并在另一列中查找

转载 作者:行者123 更新时间:2023-11-29 15:54:25 24 4
gpt4 key购买 nike

让我先展示表结构,然后展示我的问题

假设表A

  id | url |
1 | page
2 | home
3 | product
4 | sell

和表b

 id |user_id | table a id
1 | 1 | 1

我想要的输出

  id | url     |   ispermission
1 | page | 1
2 | home | 0
3 | product | 0
4 | sell | 0
ispermission 中的

(value 1 ) 表示它与用户映射,如表 b 中所示,其他表示它没有映射以下是我的查询

 select p.id,p.url,if(r.user_id=4,1,0) ispermission from  
`table a` p
left join `table b` r on p.id=r.url_id
group by p.id,p.url order by ispermission DESC

这个查询工作得很好,但在某些情况下它失败了,让我们考虑失败的情况下我得到的输出(注意这个结果没有groupby)

     id | url     |   ispermission
1 | page | 0
1 | page | 1
2 | home | 0
3 | product | 0
4 | sell | 0

通过使用 group by 我得到如下结果

     id | url     |   ispermission
1 | page | 0
2 | home | 0
3 | product | 0
4 | sell | 0

最佳答案

您正在寻找这样的东西吗?

SELECT 
T1.ID,
T1.Url,
COUNT(T2.[table a id]) Impression
FROM TableA T1
LEFT JOIN TableB T2 ON T1.ID = T2.[table a id]
GROUP BY T1.ID,T1.Url

关于mysql - 显示一个表的结果并在另一列中查找,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56578335/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com