mysql连接3个表并计数

发布于 2024-08-26 18:42:15 字数 267 浏览 9 评论 0原文

请查看此图片

替代文字

这里有 3 个表,我想要的是

table1 中的 uid 表3中相同uid的行业 表 2 中相同 uid 的 fid 计数

(如示例示例输出所示)将是 2 条记录,

谢谢

Please look at this image

alt text

here is 3 tables , and out i want is

uid from table1
industry from table 3 of same uid
count of fid from table 2 of same uid

like in the sample example output will be 2 records

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

寄居人 2024-09-02 18:42:15

我没有看到与表 1 有任何关系。下面是一个在两个表之间使用内部联接并按 uid 分组的示例:

SELECT 
  t3.uid, 
  t3.industry, 
  count(t2.fid) 
FROM 
  table3 t3 
INNER JOIN 
  table2 t2 ON t3.uid = t2.uid 
GROUP BY 
  t3.uid

I don't see any relation with table 1. Here's an example using an inner join between the two tables and grouping by the uid:

SELECT 
  t3.uid, 
  t3.industry, 
  count(t2.fid) 
FROM 
  table3 t3 
INNER JOIN 
  table2 t2 ON t3.uid = t2.uid 
GROUP BY 
  t3.uid
七禾 2024-09-02 18:42:15

尝试这样做:

SELECT table1.uid,table3.industry,COUNT(table2.fid) 
FROM table1 
INNER JOIN table3 ON table1.uid=table3.uid
INNER JOIN table2 ON table1.uid=table2.uid
GROUP BY table1.uid, table3.industry

Table1 内部联接是无用的,但如果您需要检索城市或 mem_no,则可能有用;
在这种情况下,请记住也在 GROUP BY 子句中添加该字段。

Try with this:

SELECT table1.uid,table3.industry,COUNT(table2.fid) 
FROM table1 
INNER JOIN table3 ON table1.uid=table3.uid
INNER JOIN table2 ON table1.uid=table2.uid
GROUP BY table1.uid, table3.industry

Table1 inner join is useless but could be useful if you'll need to retrieve city or mem_no;
in this case, remember to add the field also in GROUP BY clause.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文