【发布时间】:2020-07-28 15:17:52
【问题描述】:
我有 3 张桌子
branch-
br_id,
br_name
users
user_id
user_name
user_type (2 types 'owner' 'admin')
user_branch (associated branch )
user_branches (comma seperated branch ids in case of 'admin' type )
item
it_id
it_amount
it_owner
it_admin
it_activated
这里每个项目都由用户类型“所有者”拥有
每个项目还通过用户类型“admin”关联
我想要的是 分行列表及相关的总量和总数
**Branch** **total** **total amount**
some branch Name 5 500
another Branch Name 7 780
我怎样才能在单个查询中做到这一点
我试过这个显示所有分支的数量
SELECT br_name,
count(it_id),
SUM(it_amount),
FROM branch
LEFT JOIN users ON FIND_IN_SET(br_id,user_branches)>0
LEFT JOIN item ON it_admin=ad_id
WHERE it_activated=1
GROUP BY br_name
但我在所有分支机构中的数量和数量都相同
【问题讨论】:
-
感谢您为回答问题所做的任何尝试。
-
你试过什么了吗???
-
花一些时间创建一个小提琴:db-fiddle.com 并提供足够的样本数据并发布预期结果以澄清。
-
user_branches,作为一个以逗号分隔的字符串表示 values,是危险的,因为不是normalized。专门为用户分支制作另一个表可能会很有用
-
我们两个人花时间回答了您的问题 - 您愿意回复@DRapp 和我自己吗?