【发布时间】:2020-04-15 17:47:04
【问题描述】:
所以,我似乎无法找到让它工作的方法。但是,我需要的是如下。
我有一张可以说类型的表。
Type_ID, Type_Description
然后我有一个项目表。 [Item Type是fk to type table]
Item_ID, Item_Type
然后我有一个结果表。 [Item_ID 是对 Item 表的 fk]
Result_ID, Item_ID, Cost
所以我需要的输出是按 Type_ID 分组的 - 项目数(可以是0), - 结果计数(可以为 0), - 和Cost之和(可以为0)
我没有直接访问这些表的权限。我必须构建 sql 并将其发送到 api,所以我不知道错误,如果成功则只知道结果,如果不知道错误 500。
似乎是较旧的 tSQL。作为 List 和 STRING_AGG 似乎不可用。
编辑:根据要求 - 示例数据
+---------+------------------+
| Type_ID | Type_Description |
+---------+------------------+
| 1 | Example 1 |
+---------+------------------+
| 2 | Example 2 |
+---------+------------------+
+---------+---------------+
| ITEM_ID | ITEM_TYPE |
+---------+---------------+
| 1 | 1 |
+---------+---------------+
| 2 | 1 |
+---------+---------------+
| 3 | 1 |
+---------+---------------+
| 4 | 2 |
+---------+---------------+
| 5 | 2 |
+---------+---------------+
+-----------+---------+------+
| Result_ID | Item_ID | Cost |
+-----------+---------+------+
| 1 | 1 | 10 |
+-----------+---------+------+
| 2 | 1 | 20 |
+-----------+---------+------+
| 3 | 2 | 5 |
+-----------+---------+------+
| 4 | 5 | 100 |
+-----------+---------+------+
期望的输出
+---------+------------+--------------+------+
| Type_ID | Item_Count | Result_Count | Cost |
+---------+------------+--------------+------+
| 1 | 3 | 3 | 35 |
+---------+------------+--------------+------+
| 2 | 2 | 1 | 100 |
+---------+------------+--------------+------+
【问题讨论】:
-
请添加样本数据和想要的结果。
-
@GordonLinoff 完成
-
根据您的解释,我认为您需要在最终结果中添加
Type_ID 3和全 0。否则,你会得到错误的答案。
标签: sql tsql join group-by count