问题3:编写一段SQL,找到2012年9月份全行所有产品余额总计超过1000万的前10家分行,并按照产品余额总计降序排列(8分) 分行编号 产品编号 余额总计 Xxxxxx Xxxxxx 12345600 Xxxxxx Xxxxxx 10000000 .. ..
时间: 2024-02-12 17:04:19 浏览: 161
以下是一段SQL代码,可以满足你的需求:
```
SELECT Org_Id, SUM(Amt) AS Balance
FROM T4
WHERE Product_Id != '05108100' AND Txn_Dt BETWEEN '2012-09-01' AND '2012-09-30'
GROUP BY Org_Id
HAVING SUM(Amt) > 10000000
ORDER BY Balance DESC
LIMIT 10;
```
解释:
1. 在 `WHERE` 子句中,我们排除了产品编号为 `05108100` 的记录,因为我们需要找到持有其他产品的客户数。
2. `Txn_Dt BETWEEN '2012-09-01' AND '2012-09-30'` 用于筛选出 2012 年 9 月份的记录。
3. 在 `GROUP BY` 子句中,我们按照分行编号对记录进行分组,并使用 `SUM` 函数计算每个分行的产品余额总计。
4. 在 `HAVING` 子句中,我们筛选出产品余额总计超过 1000 万的分行。
5. 最后,我们按照产品余额总计降序排列,并使用 `LIMIT` 子句限制结果集的大小为 10。
阅读全文