Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
              Van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL Analytics-eindpunt in Microsoft Fabric
Magazijn in Microsoft Fabric
SQL-database in Microsoft Fabric Preview
Hiermee geeft u de kolommen die moeten worden geretourneerd door de query.
              
              
              Transact-SQL syntaxis-conventies
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
Hiermee geeft u op dat dubbele rijen kunnen worden weergegeven in de resultatenset. ALL is de standaardinstelling.
DISTINCT
Hiermee geeft u op dat alleen unieke rijen kunnen worden weergegeven in de resultatenset. Null-waarden worden als gelijk beschouwd voor de doeleinden van het sleutelwoord DISTINCT.
TOP (expressie ) [ PERCENT ] [ MET TIES ]
Geeft aan dat alleen een opgegeven eerste set of percentage rijen wordt geretourneerd uit de resultatenset van de query. 
              expressie kan een getal of een percentage van de rijen zijn.
Voor compatibiliteit met eerdere versies wordt het gebruik van de TOP-expressie zonder haakjes in SELECT-instructies ondersteund, maar dit wordt niet aanbevolen. Zie TOP (Transact-SQL)voor meer informatie.
< > select_list De kolommen die moeten worden geselecteerd voor de resultatenset. De selectielijst is een reeks expressies gescheiden door komma's. Het maximum aantal expressies dat kan worden opgegeven in de selectielijst is 4096.
*
Hiermee geeft u op dat alle kolommen uit alle tabellen en weergaven in de FROM-component moeten worden geretourneerd. De kolommen worden geretourneerd door een tabel of weergave, zoals opgegeven in de FROM-component, en in de volgorde waarin ze in de tabel of weergave aanwezig zijn.
              
              
               |  table_name |  view_nametable_alias.*
Beperkt het bereik van de * tot de opgegeven tabel of weergave.
              column_name
Is de naam van een kolom die moet worden geretourneerd. In aanmerking komen column_name om te voorkomen dat er dubbelzinnig wordt verwezen, zoals wanneer twee tabellen in de FROM-component kolommen met dubbele namen bevatten. De tabellen SalesOrderHeader en SalesOrderDetail in de AdventureWorks2022 database hebben bijvoorbeeld beide een kolom met de naam ModifiedDate. Als de twee tabellen worden samengevoegd in een query, kan de gewijzigde datum van de vermeldingen SalesOrderDetail worden opgegeven in de selectielijst als SalesOrderDetail.ModifiedDate.
              expression
Is een constante, functie, elke combinatie van kolomnamen, constanten en functies die zijn verbonden door een operator of operator of een subquery.
$IDENTITY
Retourneert de identiteitskolom. Zie IDENTITY (Property) (Transact-SQL), ALTER TABLE (Transact-SQL) en CREATE TABLE (Transact-SQL)voor meer informatie.
Als meer dan één tabel in de FROM-component een kolom met de eigenschap IDENTITY bevat, moet $IDENTITY worden gekwalificeerd met de specifieke tabelnaam, zoals T1.$IDENTITY.
$ROWGUID
Retourneert de rij-GUID-kolom.
Als er meer dan één tabel in de FROM-component met de eigenschap ROWGUIDCOL staat, moet $ROWGUID worden gekwalificeerd met de specifieke tabelnaam, zoals T1.$ROWGUID.
              udt_column_name
Is de naam van een door de gebruiker gedefinieerde clr-kolom (Common Language Runtime) die moet worden geretourneerd.
Note
SQL Server Management Studio retourneert door de gebruiker gedefinieerde typewaarden in binaire weergave. Als u door de gebruiker gedefinieerde typewaarden wilt retourneren in tekenreeks- of XML-indeling, gebruikt u CAST of CONVERT.
{ . | :: }
Hiermee geeft u een methode, eigenschap of veld van een door de gebruiker gedefinieerde CLR-type op. Use . voor een instantiemethode (niet-statische) methode, eigenschap of veld. Gebruik :: voor een statische methode, eigenschap of veld. Als u een methode, eigenschap of veld van een door de gebruiker gedefinieerd CLR-type wilt aanroepen, moet u de machtiging EXECUTE hebben voor het type.
              property_name
Is een openbare eigenschap van udt_column_name.
              field_name
Is een openbaar gegevenslid van udt_column_name.
              method_name
Is een openbare methode van udt_column_name die een of meer argumenten gebruikt. 
              method_name kan geen mutatormethode zijn.
In het volgende voorbeeld worden de waarden voor de Location kolom geselecteerd, gedefinieerd als type point, in de Cities tabel door een methode aan te roepen van het type dat wordt aangeroepen 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
Is een alternatieve naam om de kolomnaam in de queryresultatenset te vervangen. U kunt bijvoorbeeld een alias, zoals Quantity, of Quantity to Date, of Qty opgeven voor een kolom met de naam aantal.
Aliassen worden ook gebruikt om namen op te geven voor de resultaten van expressies, bijvoorbeeld:
USE AdventureWorks2022;  
GO  
SELECT AVG(UnitPrice) AS [Average Price]  
FROM Sales.SalesOrderDetail;
column_alias kan worden gebruikt in een ORDER BY-component. Het kan echter niet worden gebruikt in een WHERE-, GROUP BY- of HAVING-component. Als de query-expressie deel uitmaakt van een DECLARE CURSOR-instructie, kan column_alias niet worden gebruikt in de COMPONENT FOR UPDATE.
Remarks
De lengte van gegevens die worden geretourneerd voor tekst - of ntekstkolommen die zijn opgenomen in de selectielijst, is ingesteld op de kleinste waarde van het volgende: de werkelijke grootte van de tekstkolom , de standaardinstelling SMSIZE-sessie of de in code vastgelegde toepassingslimiet. Als u de lengte van de geretourneerde tekst voor de sessie wilt wijzigen, gebruikt u de SET-instructie. Standaard is de limiet voor de lengte van tekstgegevens die worden geretourneerd met een SELECT-instructie 4000 bytes.
De SQL Server Database Engine genereert uitzondering 511 en rolt de huidige actieve instructie terug als een van de volgende gedragingen zich voordoet:
- De SELECT-instructie produceert een resultaatrij of een tussenliggende werktabelrij van meer dan 8.060 bytes. 
- De instructie DELETE, INSERT of UPDATE probeert een actie uit te voeren op een rij van meer dan 8060 bytes. 
Er treedt een fout op als er geen kolomnaam is opgegeven voor een kolom die is gemaakt met een SELECT INTO- of CREATE VIEW-instructie.
See Also
              SELECT-voorbeelden (Transact-SQL)
              Expressions (Transact-SQL)
              SELECT (Transact-SQL)