StDev- und StDevP-Funktionen (Microsoft Access SQL)

Gilt für: Access 2013 | Access 2016

Gibt die geschätzte Standardabweichung für eine Population oder für eine Populationsstichprobe als Menge von Werten zurück, die in einem angegebenen Feld einer Abfrage enthalten sind.

Syntax

StDev(expr)

StDevP(expr)

Der Platzhalter expr stellt einen Zeichenfolgenausdruck dar, der das Feld identifiziert, das die numerischen Daten enthält, die Sie auswerten möchten, oder einen Ausdruck, der eine Berechnung mit den Daten in diesem Feld ausführt. Operanden in Ausdr können den Namen eines Tabellenfelds, eine Konstante oder eine Funktion einschließen (wobei es sich entweder um eine systeminterne oder benutzerdefinierte Funktion handeln kann, jedoch nicht um eine der anderen SQL-Aggregatfunktionen).

HinwBemerkungeneise

Mit der StDevP-Funktion wird eine Population ausgewertet und mit der StDev-Funktion eine Populationsstichprobe.

Wenn die zugrunde liegende Abfrage weniger als zwei Datensätze enthält (oder bei der StDevP-Funktion keine Datensätze), geben diese Funktionen einen Null-Wert zurück (wodurch angezeigt wird, dass eine Standardabweichung nicht berechnet werden kann).

Verwenden Sie die Funktionen StDev und StDevP in einem Abfrageausdruck. Sie können diesen Ausdruck auch in der SQL-Eigenschaft eines QueryDef-Objekts verwenden oder beim Erstellen eines Recordset-Objekts, das auf einer SQL-Abfrage basiert.

Beispiel

In diesem Beispiel wird die Orders-Tabelle verwendet, um die geschätzte Standardabweichung der Versandkosten für Bestellungen zu ermitteln, die nach Großbritannien versandt wurden.

In diesem Beispiel wird die EnumFields-Prozedur aufgerufen, die im Beispiel für die SELECT-Anweisung enthalten ist.

Sub StDevX() 
 
    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 standard deviation of the freight 
    ' charges for orders shipped to the United Kingdom. 
    Set rst = dbs.OpenRecordset("SELECT " _ 
        & "StDev(Freight) " _ 
        & "AS [Freight Deviation] FROM Orders " _ 
        & "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 
     
    Debug.Print 
     
    Set rst = dbs.OpenRecordset("SELECT " _ 
        & "StDevP(Freight) " _ 
        & "AS [Freight DevP] FROM Orders " _ 
        & "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 

Siehe auch

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.