0

質問があります

select t1.id,t1.col1,t1.col2,t2.col1,t2.col2,sum(t2.col3) as total
From table1 t1
join table2 t2 on t1.id=t2.id
where t1.col =@col
Group by t1.id

そして、それは私にエラーを与えています

t1.col1 は、集計関数にも GROUP BY 句にも含まれていないため、選択リストでは無効です。

group by句で単一の列で複数の列を選択するには?

4

2 に答える 2

2

Group ByAVG、MIN、MAX などのグループ関数にそれらを配置する場合、またはGroup BY句自体にすべての列を追加する場合を除いて、句で 1 つの列を使用して複数の列を選択することはできません。

  select t1.id,t1.col1,t1.col2,t2.col1,t2.col2,sum(t2.col3) as total
   From table1 t1
   join table2 t2 on t1.id=t2.id
   where t1.col =@col
   Group by t1.id , ,t1.col1,t1.col2,t2.col1,t2.col2
于 2012-06-30T06:50:10.893 に答える
0

t1.col1、t1.col2、t2.col1、t2.col2 が数値列の場合は、min, max使用できます。groupby文字列列の場合、ステートメントでそれらを使用する必要があります

于 2012-06-30T06:46:56.383 に答える