Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-analysslutpunkt i Microsoft Fabric
Lager i Microsoft Fabric
SQL-databas i Förhandsversion av Microsoft Fabric
Anger vilka kolumner som ska returneras av frågan.
Transact-SQL syntaxkonventioner
Syntax
SELECT [ ALL | DISTINCT ]
[ TOP ( expression ) [ PERCENT ] [ WITH TIES ] ]
<select_list>
<select_list> ::=
{
*
| { table_name | view_name | table_alias }.*
| {
[ { table_name | view_name | table_alias }. ]
{ column_name | $IDENTITY | $ROWGUID }
| udt_column_name [ { . | :: } { { property_name | field_name }
| method_name ( argument [ ,...n] ) } ]
| expression
}
[ [ AS ] column_alias ]
| column_alias = expression
} [ ,...n ]
Arguments
ALL
Anger att dubbletter av rader kan visas i resultatuppsättningen. ALLA är standardvärdet.
DISTINCT
Anger att endast unika rader kan visas i resultatuppsättningen. Null-värden anses vara lika för nyckelordet DISTINCT.
TOP (uttryck ) [ PROCENT ] [ MED TIES ]
Anger att endast en angiven första uppsättning eller procent av raderna returneras från frågeresultatuppsättningen.
uttryck kan vara antingen ett tal eller en procent av raderna.
För bakåtkompatibilitet stöds användning av TOP-uttrycket utan parenteser i SELECT-uttryck, men vi rekommenderar det inte. Mer information finns i TOP (Transact-SQL).
< > select_list De kolumner som ska väljas för resultatuppsättningen. Välj listan är en serie uttryck avgränsade med kommatecken. Det maximala antalet uttryck som kan anges i urvalslistan är 4 096.
*
Anger att alla kolumner från alla tabeller och vyer i FROM-satsen ska returneras. Kolumnerna returneras av tabell eller vy, enligt vad som anges i FROM-satsen, och i den ordning de finns i tabellen eller vyn.
| table_name | view_nametable_alias.*
Begränsar omfånget för * till den angivna tabellen eller vyn.
column_name
Är namnet på en kolumn som ska returneras. Kvalificera column_name för att förhindra en tvetydig referens, till exempel när två tabeller i FROM-satsen har kolumner med dubblettnamn. Tabellerna SalesOrderHeader och SalesOrderDetail i AdventureWorks2022 databasen har till exempel båda en kolumn med namnet ModifiedDate. Om de två tabellerna är anslutna i en fråga kan det ändrade datumet för SalesOrderDetail-posterna anges i urvalslistan som SalesOrderDetail.ModifiedDate.
expression
Är en konstant, funktion, valfri kombination av kolumnnamn, konstanter och funktioner som är anslutna av en operator eller operator eller en underfråga.
$IDENTITY
Returnerar identitetskolumnen. Mer information finns i IDENTITY (Property) (Transact-SQL), ALTER TABLE (Transact-SQL), and CREATE TABLE (Transact-SQL).
Om fler än en tabell i FROM-satsen har en kolumn med egenskapen IDENTITY måste $IDENTITY kvalificeras med det specifika tabellnamnet, till exempel T1.$IDENTITY.
$ROWGUID
Returnerar radens GUID-kolumn.
Om det finns mer än en tabell i FROM-satsen med egenskapen ROWGUIDCOL måste $ROWGUID kvalificeras med det specifika tabellnamnet, till exempel T1.$ROWGUID.
udt_column_name
Är namnet på en CLR-användardefinierad typkolumn (Common Language Runtime) som ska returneras.
Note
SQL Server Management Studio returnerar användardefinierade typvärden i binär representation. Om du vill returnera användardefinierade typvärden i sträng- eller XML-format använder du CAST eller CONVERT.
{ . | :: }
Anger en metod, egenskap eller ett fält av en användardefinierad CLR-typ. Use . för en instansmetod (icke-statisk) metod, egenskap eller fält. Använd :: för en statisk metod, egenskap eller ett fält. Om du vill anropa en metod, egenskap eller ett fält av en användardefinierad CLR-typ måste du ha behörigheten EXECUTE för typen.
property_name
Är en offentlig egenskap för udt_column_name.
field_name
Är en offentlig datamedlem i udt_column_name.
method_name
Är en offentlig metod för udt_column_name som tar ett eller flera argument.
method_name kan inte vara en mutatormetod.
I följande exempel väljs värdena för Location kolumnen, som definierats som typ point, från Cities tabellen, genom att anropa en metod av typen som heter Distance:
CREATE TABLE dbo.Cities (
Name VARCHAR(20),
State VARCHAR(20),
Location POINT);
GO
DECLARE @p POINT (32, 23), @distance FLOAT;
GO
SELECT Location.Distance (@p)
FROM Cities;
column_alias
Är ett alternativt namn för att ersätta kolumnnamnet i frågeresultatuppsättningen. Till exempel kan ett alias, till exempel Kvantitet eller Kvantitet till datum, eller Qty anges för en kolumn med namnet quantity.
Alias används också för att ange namn för resultatet av uttryck, till exempel:
USE AdventureWorks2022;
GO
SELECT AVG(UnitPrice) AS [Average Price]
FROM Sales.SalesOrderDetail;
column_alias kan användas i en ORDER BY-sats. Den kan dock inte användas i en WHERE-, GROUP BY- eller HAVING-sats. Om frågeuttrycket ingår i en DECLARE CURSOR-instruktion kan column_alias inte användas i FOR UPDATE-satsen.
Remarks
Längden på data som returneras för text - eller ntextkolumner som ingår i urvalslistan anges till det minsta värdet för följande: textkolumnens faktiska storlek, standardinställningen FÖR TEXTSTORLEK-session eller den hårdkodade programgränsen. Om du vill ändra längden på den returnerade texten för sessionen använder du SET-instruktionen. Som standard är gränsen för längden på textdata som returneras med en SELECT-instruktion 4 000 byte.
SQL Server Database Engine genererar undantag 511 och återställer den aktuella körningssatsen om något av följande beteende inträffar:
SELECT-instruktionen genererar en resultatrad eller en mellanliggande arbetstabellrad som överstiger 8 060 byte.
Instruktionen DELETE, INSERT eller UPDATE försöker med en åtgärd på en rad som överstiger 8 060 byte.
Ett fel uppstår om inget kolumnnamn har angetts för en kolumn som skapats av en SELECT INTO- eller CREATE VIEW-instruktion.
See Also
SELECT-exempel (Transact-SQL)
Expressions (Transact-SQL)
SELECT (Transact-SQL)