2

基本的に、私は C# でプログラムを作成しており、データベースへのクエリを作成する必要があります。このクエリでは、特定の列のすべての値を合計する必要があり、他の 2 つの列が要件に一致します。次に、値を取得して「int」型変数に入れます。

SELECT SUM(Column1) FROM table WHERE Column2="blahblah" AND Column3="Case1" ...
int the_sum = System.Convert.ToInt32(sql.ExecuteScalar());

問題は、Column3 には 2 種類の文字列値しか持てないことです。ここでは、Case1 または Case2 と呼びます。Column3 に Case1 値が含まれている場合にのみ、Column1 の SUM が必要です。Column3 のすべての値が Case2 である可能性を除いて、すべてが優れています。そうすれば、合計するインスタンスがなくなり、「the_sum」int に合計を入れたい 2 行目にエラーが表示されます。

int the_sum = System.Convert.ToInt32(sql.ExecuteScalar());

どうすればこれを手に入れることができますか?私はここでそれをすべて間違っていますか?

4

1 に答える 1

6

SUM(column1)をに変更ISNULL(SUM(column1),0)

このようにして、追加する値がない場合はゼロに戻ります..

于 2012-04-11T13:40:14.950 に答える