Sum 関数 (Microsoft Access SQL)
適用先: Access 2013 | Access 2016
クエリで指定したフィールドにある値の合計を返します。
構文
Sum(expr)
expr プレースホルダーは、追加する数値データを含むフィールドを識別する文字列式、またはそのフィールド内のデータを使用して計算を実行する式を表します。 expr のオペランドには、テーブル フィールド、定数、または関数の名前を含めることができます (組み込み関数またはユーザー定義関数のいずれかでも、他の SQL 集計関数の 1 つでもかまいません)。
注釈
Sum 関数は、フィールドに格納されている値の合計を計算します。 たとえば、運送料の合計を求める場合にこの Sum 関数を使用します。
Sum 関数は、 Null 値のフィールドのあるレコードを除外して計算します。 たとえば、次の例では UnitPrice (単価) と Quantity (数量) から Total Revenue (総売上) を求めます。
SELECT
Sum(UnitPrice * Quantity)
AS [Total Revenue] FROM [Order Details];
クエリ式で Sum 関数を使用します。 この式は、QueryDef オブジェクトの SQL プロパティ、または SQL クエリに基づいて Recordset を作成するときにも使用できます。
例
次の使用例では、Orders テーブルを使用して、英国に出荷された受注品の総売上高を計算します。
この例では、EnumFields プロシージャを呼び出します。EnumFields プロシージャについては、SELECT ステートメントの使用例を参照してください。
Sub SumX()
Dim dbs As Database, rst As Recordset
' Modify this line to include the path to Northwind
' on your computer.
Set dbs = OpenDatabase("Northwind.mdb")
' Calculate the total sales for orders shipped to
' the United Kingdom.
Set rst = dbs.OpenRecordset("SELECT" _
& " Sum(UnitPrice*Quantity)" _
& " AS [Total UK Sales] FROM Orders" _
& " INNER JOIN [Order Details] ON" _
& " Orders.OrderID = [Order Details].OrderID" _
& " WHERE (ShipCountry = 'UK');")
' Populate the Recordset.
rst.MoveLast
' Call EnumFields to print the contents of the
' Recordset. Pass the Recordset object and desired
' field width.
EnumFields rst, 15
dbs.Close
End Sub
関連項目
- 開発者フォーラムにアクセスする
- support.office.com のヘルプにアクセスする
- UtterAccess のフォーラムにアクセスする
- 開発者と VBA のプログラミング ヘルプ センター (FMS) にアクセスする
- StackOverflow のアクセス ポスト
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示