如果使用SUM函数和Group By语句,我只能显示2列。
需要从表中选择要显示的更多列。
例如,我希望输出显示客户,总数量,客户名称,客户地址
客户表:
+----------+--------------+------------+---------------+
|Customer |OrderQuantity |CustomerName|CustomerAddress|
+----------+--------------+------------+---------------+
|Mike |5 |Smith |123 Main St. |
+----------+--------------+------------+---------------+
|Sally |6 |Smithon |124 Main St. |
+----------+--------------+------------+---------------+
|Sally |4 |Smithon |124 Main St. |
+----------+--------------+------------+---------------+
|Mike |2 |Smith |123 Main St. |
+----------+--------------+------------+---------------+
当前SQL语句:
select customer,SUM(order_quantity) as total_quantity
from smr.dbo.tdpb_recall_manual_entry m
group by
customer
当前结果:
+----------+--------------+
|Customer |OrderQuantity |
+----------+--------------+
|Mike |7 |
+----------+--------------+
|Sally |10 |
+----------+--------------+
期望的结果:
+----------+--------------+------------+---------------+
|Customer |OrderQuantity |CustomerName|CustomerAddress|
+----------+--------------+------------+---------------+
|Mike |7 |Smith |123 Main St. |
+----------+--------------+------------+---------------+
|Sally |10 |Smithon |124 Main St. |
+----------+--------------+------------+---------------+
在期望的结果中
答案 0 :(得分:0)
假设给定客户的名称和地址数据相同,只需在group by中包含列并选择。
select customer,
CustomerName,
CustomerAddress,
SUM(order_quantity) as total_quantity
from smr.dbo.tdpb_recall_manual_entry m
group by customer,
CustomerName,
CustomerAddress
如果没有,您可以使用MAX
函数来获取其中一个:
select customer,
SUM(order_quantity) as total_quantity,
max(CustomerName) customerName,
max(CustomerAddress) CustomerAddress
from smr.dbo.tdpb_recall_manual_entry m
group by customer
另请注意,您的表格未完全标准化。您应该有一个单独的customer
表,其中包含客户ID和详细信息,以及一个{customer}作为外键的orders
表,来自customer表和order_quantity。
答案 1 :(得分:0)
当您编写选择客户的订单时,只需写下您需要的结果。 selext语句选择列,所以, 只是查询这个。 选择客户,SUM(order_quantity)为“总数量”,客户名称,来自......的客户地址,然后选择其余部分。获得理想的结果。
记住始终将您想要的内容放入查询中。在select语句的开头。
答案 2 :(得分:0)
像这样进行查询,
在import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'app works!';
}
子句中添加要查看的所有列,然后将未应用分析函数的列分组。
SELECT