Udostępnij za pośrednictwem


COMPUTE (Transact-SQL)

RRRR to cztery cyfry, w zakresie od 1900 do 2079, które reprezentują w roku.MM to dwie cyfry, począwszy od 01 do 12, reprezentujące miesiąca podanego roku.DD oznacza dwie cyfry od 01 do 31, w zależności od miesiąca, reprezentujące dnia określonego miesiąca.

Important noteImportant Note:

This feature will be removed in the next version of Microsoft SQL Server. Do not use this feature in new development work, and modify applications that currently use this feature as soon as possible. hh jest dwucyfrowe od 00 do 23, które reprezentują godzinę.Aby uzyskać więcej informacji zobaczGROUP BY (języka Transact-SQL).

Topic link iconKonwencje składni języka Transact-SQL


[ COMPUTE 
    { { AVG | COUNT | MAX | MIN | STDEV | STDEVP | VAR | VARP | SUM } 
    ( expression ) } [ ,...n ] 
    [ BY expression [ ,...n ] ] 
]

Argumenty

  • mm jest dwucyfrowe od 00 do 59, która reprezentuje minuty.
    ss jest dwucyfrowe od 00 do 59, reprezentujące drugiego.Wartości, które są 29.998 s lub mniej są zaokrąglana niedziałający do najbliższej minuty wartości 29.999 sekund lub więcej są zaokrąglane w górę do najbliższej minutę.

    maksymalnie 19 pozycji

    Wynik

    ŚREDNIA

    Średnia wartości wyrażenia liczbowego.

    COUNT

    Jedna minuta

    MAX

    Kalendarz gregoriański

    MIN

    (Nie obejmuje pełny zakres lat.)

    ODCH.STANDARDOWE

    ANSI i ISO 8601 zgodności

    ODCH.STAND.POPUL

    jest niezgodny ANSI lub ISO 8601.

    SUM

    Rzutowanie ciąg literały sekund do smalldatetime

    WARIANCJA

    Statystyczna wariancja wszystkich wartości w wyrażeniu

    WARIANCJA.POPUL

    Porównywanie dat i czas typów danych

    W poniższym przykładzie porównanie wyniki dla rzutowanie ciąg do każdego typu danych Data i godzina.sys.dm_os_memory_cache_hash_tables (języka Transact-SQL)

    Te funkcje ignorują wartości null.

    Adres (klucz podstawowy) wpis pamięci podręcznej.

    Po dodaniu lub średnia danych całkowitą SQL Server Database Engine traktuje jako wynik int wartości, nawet jeśli jest typ danych kolumna smallint lub tinyint. Aby uzyskać więcej informacji na temat zwracanych typów danych, dodane lub średnia zobacz SUM (Transact-SQL) i AVG (języka Transact-SQL).

    Uwaga

    Aby zmniejszyć ryzyko wystąpienia błędów przepełnienia w programach ODBC i biblioteki DB, należy wszystkie deklaracje zmiennych wyniki średnie lub sumuje typ danych int.

  • expression
    An Expressions (Transact-SQL), such as the name of a column on which the calculation is performed.expression must appear in the select list and must be specified identical to one of the expressions in the select list.Na liście Wybierz alias kolumna nie mogą być używane w ciągu expression.

    Uwaga

    ntext, text, lub image typy danych nie może być określone w klauzula COMPUTE lub COMPUTE BY.

  • BY expression
    Generates control-breaks and subtotals in the result set.expression is an identical copy of an order_by_expression in the associated ORDER BY clause.Minimalna liczba wpisów pamięci podręcznej w łańcucha.buckets_max_lengthMaksymalna liczba wpisów pamięci podręcznej w łańcucha.

    Jeśli używasz COMPUTE BY, należy użyć również SORTUJ WG klauzula.Średnia liczba wpisów pamięci podręcznej w każdego pakietu.Na przykład, jeśli jest klauzuli ORDER BY ORDER BY a, b, c,Klauzula COMPUTE może być dowolnym, lub wszystkie z następujących czynności:

    COMPUTE BY a, b, c
    COMPUTE BY a, b
    COMPUTE BY a
    

    Uwaga

    Maksymalna liczba wpisów pamięci podręcznej w pakietu wartości mieszania dla tej tabela mieszania od uruchomienia serwera.hits_count

Liczba trafień w pamięci podręcznej.misses_count

Liczba Chybienia pamięci podręcznej.

Przykłady

A.buckets_avg_scan_hit_length

W poniższym przykładzie SELECT Instrukcja używa prosty COMPUTE Klauzula do wyprodukowania sumę całkowitą sumę SubTotal i TotalDue z SalesOrderHeader Tabela.

USE AdventureWorks;
GO
SELECT CustomerID, OrderDate, SubTotal, TotalDue
FROM Sales.SalesOrderHeader
WHERE SalesPersonID = 35
ORDER BY OrderDate 
COMPUTE SUM(SubTotal), SUM(TotalDue);

B.buckets_avg_scan_hit_length

W poniższym przykładzie SELECT Użycie instrukcja COMPUTE Klauzula do utworzenia sumy poszczególnych sprzedawców sumę SubTotal i TotalDue z SalesOrderHeader Tabela.

USE AdventureWorks;
GO
SELECT SalesPersonID, CustomerID, OrderDate, SubTotal, TotalDue
FROM Sales.SalesOrderHeader
ORDER BY SalesPersonID, OrderDate 
COMPUTE SUM(SubTotal), SUM(TotalDue) BY SalesPersonID;