GROUP BY 两个字段

CREATE TABLE #TEST(
  A VARCHAR(10),
  B VARCHAR(10),
  C INT 
  )
 
  INSERT INTO #TEST VALUES('A','甲',1)
  INSERT INTO #TEST VALUES('A','甲',1)
  INSERT INTO #TEST VALUES('A','甲',1)
  
  INSERT INTO #TEST VALUES('A','已',1)
  INSERT INTO #TEST VALUES('B','甲',1)
  
  INSERT INTO #TEST VALUES('B','已',1)
  INSERT INTO #TEST VALUES('B','已',1)
  INSERT INTO #TEST VALUES('B','已',1)
  
  SELECT A,SUM(C) FROM #TEST
  GROUP BY A
  --结果:
  /*
    A    4
    B    4
  */
  SELECT B,SUM(C) FROM #TEST
  GROUP BY B
  --结果:
  /*
  甲    4
  已    4
  */
  SELECT A,B,SUM(C) FROM #TEST
  GROUP BY A,B
  
  --结果:
  /*
    A     甲     3
    B     甲     1
    A     已     1
    B     已     3
  */
  
  SELECT A,B,SUM(C) FROM #TEST
  GROUP BY B,A
  --结果:
  /*
    A    甲    3
    A    已    1
    B    甲    1
    B    已    3
  */

  

总结:

   GROUP BY A,B

   先根据B字段进行分组,如果B能分,A 也能分 就分成同一组

posted @ 2022-03-15 23:48  古家杰  阅读(566)  评论(0)    收藏  举报