データベースからの単一の値の取得

テーブルやデータ ストリームの形式ではなく、単に 1 つの値をデータベース情報として返すことが必要な場合があります。たとえば、Count(*)、Sum(Price)、Avg(Quantity) などの集約関数の結果を返す場合です。Command オブジェクトは、ExecuteScalar メソッドを使用して単一の値を返す機能を提供します。ExecuteScalar メソッドは、結果セットの 1 行目の 1 列目の値をスカラ値として返します。

Count 集約関数を使用してテーブル内のレコード数を返すサンプル コードを次に示します。

Dim ordersCMD As SqlCommand = New SqlCommand("SELECT Count(*) FROM Orders", nwindConn)

Dim count As Int32 = CInt(ordersCMD.ExecuteScalar())
[C#]
SqlCommand ordersCMD = new SqlCommand("SELECT Count(*) FROM Orders", nwindConn);

Int32 count = (Int32)ordersCMD.ExecuteScalar();

参照

.NET Framework データ プロバイダによるデータのアクセス | OleDbCommand クラス| OleDbConnection クラス | OdbcCommand クラス | OdbcConnection クラス | SqlCommand クラス | SqlConnection クラス