我有查询:
SELECT substring(Code,1,6) as Code
From Table
Group by substring(Code,1,6)
Order By Code
但是,我正在尝试添加一列,该列是已在此查询中分组的行的计算总和。例如:
Code Number S05080A 20 S05080B 20 S70331A 8 S70331B 4
然后会变成:
Code Sum S05080 40 S70331 12
希望有人可以帮我解决这个问题,非常感谢!
答案 0 :(得分:3)
Foo
答案 1 :(得分:1)
您已经完成了艰苦的工作 - 只需将 private Button button;
private ImageView image;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button)findViewById(R.id.button1);
image = (ImageView)findViewById(R.id.imageView1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
ColorMatrix matrix = new ColorMatrix();
matrix.setSaturation(0);
ColorMatrixColorFilter filter = new ColorMatrixColorFilter(matrix);
image.setColorFilter(filter);
}
});
添加为另一列并将其别名
SUM(Number)
答案 2 :(得分:1)
您可以使用SUM
,如下所示:
SELECT substring(Code,1,6) as Code, SUM(Number) as Sum
From Table
Group by substring(Code,1,6)
Order By Code
答案 3 :(得分:1)
您可以使用:
CREATE TABLE #codes(code nvarchar(10), number int)
INSERT INTO #codes(code, number)
VALUES(N'S05080A', 20), (N'S05080B', 20), (N'S70331A', 8), (N'S70331B', 4)
-- This is your part
SELECT LEFT(code,6) as code,SUM(number)
FROM #codes
GROUP BY LEFT(code,6)
DROP TABLE #codes
答案 4 :(得分:0)
declare @t table (Code varchar(10),number int)
insert into @t(code,number)values ('S05080A',20), ('S05080B',20), ('S70331A',8),('S70331B', 4)
SELECT SUBSTRING(Code, 1, NULLIF(DATALENGTH(Code)-1,-1)),SUM(number)
From @t
Group by SUBSTRING(Code, 1, NULLIF(DATALENGTH(Code)-1,-1))
Order By SUBSTRING(Code, 1, NULLIF(DATALENGTH(Code)-1,-1))