我正在尝试计算[供应商表]中的记录,其中supplierid = 2 并在[详细信息表]中除以计数记录,其中address = az
两个表的公共字段是carid = cardid
非常感谢你!
答案 0 :(得分:0)
我想要做一点点。
您需要加入两个表格,在where
中应用过滤器,然后计算。
SELECT count(*)
FROM
[Supplier table] s INNER JOIN
[detail table] d on s.carid= d.carid
WHERE s.supplierid=2
and d.address=az
这可能更通用。该组全部为s.supplierid
并计算每个组
SELECT s.supplierid, count(*)
FROM
[Supplier table] s INNER JOIN
[detail table] d on s.carid= d.carid
WHERE d.address=az
GROUP BY s.supplierid
答案 1 :(得分:0)
也许这对你有用。将详细信息的计数选择到子查询表中,然后您可以使用结果分成主表计数。
SELECT s.carid, COUNT(*), detail_table.DetailCount, COUNT(*) / detail_table.DetailCount
FROM supplier s,
(SELECT d.carid, COUNT(*) DetailCount
FROM details d
WHERE d.address=az
GROUP BY d.carid) detail_table
WHERE s.supplierid=2 and s.carid=detail_table.carid
GROUP BY s.carid, detail_table.DetailCount