假设我有3张桌子:顾客,武器和订单。我想要的是创建一个表格,我需要为每个客户显示他/她按类别购买的商品数量(枪支,手枪等)和武器总量?它只使用SQL查询可实现吗?我可以在没有子查询的情况下实现这个,因为我打算使用SQL CE吗?
表具有以下结构: 客户(身份证,姓名) 武器(id,weapon_type) 订单(cust_id,weap_id,quantity)
我希望得到这个:
Name | Order(w_type) | Quantity | Total -----------+---------------+--------------+----------- John Smith | Guns | 3 | 7 John Smith | Pistols | 4 | 7 -----------+---------------+--------------+----------- Jane Doe | Guns | 5 | 14 Jane Doe | Pistols | 7 | 14 Jane Doe | Cannons | 2 | 14
或(甚至更好)
Name | Order | Quantity | Total -----------+---------------+--------------+----------- John Smith | Guns | 3 | John Smith | Pistols | 4 | -----------+---------------+--------------+----------- 7 -----------+---------------+--------------+----------- Jane Doe | Guns | 5 | Jane Doe | Pistols | 7 | Jane Doe | Cannons | 2 | -----------+---------------+--------------+----------- 14
感谢。
答案 0 :(得分:0)
CE中没有分析函数(例如SUM()OVER)可以给你第一个结果。
如果您的预期(“更好”)结果是第2个,甚至不是表格,您需要触发两个查询;一个用于表,一个用于总和。要么是这样,要么在你通过表格结果时收集金额(按人格排序)。