Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
SQL Analytics-végpont a Microsoft Fabricben
Raktár a Microsoft Fabricben
SQL-adatbázis a Microsoft Fabricben
Megadja azokat az oszlopokat, amelyeket a Transact-SQL (T-SQL) lekérdezés visszaad.
Transact-SQL szintaxis konvenciók
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
Megadja, hogy ismétlődő sorok jelenjenek meg az eredményhalmazban. A ALL az alapértelmezett.
DISTINCT
Megadja, hogy csak egyedi sorok jelenjenek meg az eredményhalmazban. A null értékek a kulcsszó szempontjából egyenlőnek minősülnek DISTINCT .
TOP (kifejezés) [ PERCENT ] [ WITH TIES ]
Azt jelzi, hogy a lekérdezés eredményhalmazából csak a megadott első készlet vagy a sorok százaléka lesz visszaadva. kifejezés lehet a sorok száma vagy százaléka.
Bár TOP <expression> zárójelek nélkül a visszafelé kompatibilitásra vonatkozó utasítások támogatják SELECT , kerülje ezt a szintaxist. További információ: TOP.
<select_list>
Megadja az eredményhalmazhoz kijelölendő oszlopokat. A kijelölési lista vesszővel elválasztott kifejezések sorozata. A kijelölési listában megadható kifejezések maximális száma 4096.
*
Megadja, hogy a záradék összes táblájának és nézetének FROM minden oszlopát vissza kell adni. Az oszlopokat tábla vagy nézet adja vissza a FROM záradékban megadott módon, és abban a sorrendben, amelyben azok a táblában vagy nézetben léteznek.
| table_name | view_nametable_alias.*
A * hatókörét a megadott táblára vagy nézetre korlátozza.
column_name
A visszaadni kívánt oszlop neve.
Minősítse column_name, hogy ne lehessen kétértelmű hivatkozást megadni, például akkor, ha a FROM záradék két táblája ismétlődő neveket tartalmazó oszlopokkal rendelkezik. Az adatbázis és SalesOrderDetail a SalesOrderHeaderAdventureWorks2025 táblák például egy oszlopot is tartalmaznakModifiedDate. Ha a két tábla egy lekérdezésben csatlakozik, a kijelölési listában SalesOrderDetail.ModifiedDatea bejegyzések módosított dátumát SalesOrderDetail is megadhatja.
expression
Egy operátor vagy operátor által csatlakoztatott állandó, függvény, oszlopnevek, állandók és függvények bármilyen kombinációja, vagy egy allekérdezés.
$IDENTITY
Az identitásoszlopot adja vissza. További információ: IDENTITY (Property), ALTER TABLE és CREATE TABLE.
Ha a FROM záradékban több tábla is tartalmaz egy oszlopot a IDENTITY tulajdonsággal, akkor a megadott táblanévvel kell rendelkeznie $IDENTITY , például T1.$IDENTITY.
$ROWGUID
A sor GUID oszlopát adja vissza.
Ha a FROM záradékban több tábla is rendelkezik a ROWGUIDCOL tulajdonsággal, akkor a megadott táblanévvel kell rendelkeznie $ROWGUID , például T1.$ROWGUID.
udt_column_name
A visszaadni kívánt közös nyelvi futtatókörnyezet (CLR) felhasználó által definiált típusoszlopának neve.
Note
Az SQL Server Management Studio a felhasználó által megadott típusértékeket adja vissza bináris reprezentációban. Ha a felhasználó által megadott típusértékeket sztring- vagy XML-formátumban szeretné visszaadni, használja a CAST, a CONVERT vagy a CAST és a CONVERT függvényt.
{ . | :: }
Felhasználó által definiált CLR-típus metódusát, tulajdonságát vagy mezőjét adja meg. Pont (.) használata példányhoz (nemsztatikus) metódushoz, tulajdonsághoz vagy mezőhöz. Használjon kettőspontot (::) statikus metódushoz, tulajdonsághoz vagy mezőhöz. A felhasználó által definiált CLR-típus metódusának, tulajdonságának vagy mezőjének meghívásához engedéllyel kell rendelkeznie EXECUTE a típushoz.
property_name
A udt_column_name köztulajdona.
field_name
A udt_column_name nyilvános adattagja.
method_name
Egy nyilvános udt_column_name metódus, amely egy vagy több argumentumot vesz igénybe. method_name nem lehet mutációs módszer.
Az alábbi példa a tábla típuspontkéntCities definiált oszlopának értékeit Location választja ki a következő típusú Distancemetódus meghívásával:
CREATE TABLE dbo.Cities
(
Name VARCHAR (20),
State VARCHAR (20),
Location POINT
);
GO
DECLARE @p AS POINT (32, 23),
@distance AS FLOAT;
SELECT Location.Distance(@p)
FROM Cities;
column_alias
Alternatív név a lekérdezés eredményhalmazában lévő oszlopnév helyére. Például egy alias, például Quantitya , vagy Quantity a to Date, vagy Qty megadható egy nevű quantityoszlophoz.
Aliasok használatával megadhatja a kifejezések eredményeinek nevét, például:
USE AdventureWorks2025;
GO
SELECT AVG(UnitPrice) AS [Average Price]
FROM Sales.SalesOrderDetail;
column_alias használható egy ORDER BY záradékban. Nem használhatja azonban egy , GROUP BYvagy HAVING záradékbanWHERE. Ha a lekérdezési kifejezés egy DECLARE CURSOR utasítás része, column_alias nem használható a FOR UPDATE záradékban.
Remarks
Ha szöveg - vagy ntext oszlopokat tartalmaz a kijelölési listában, a visszaadott adatok hossza az alábbi lehetőségek legkisebb értéke:
- a szövegoszlop tényleges mérete,
- az alapértelmezett
TEXTSIZEmunkamenet-beállítás, vagy - a szigorúan kódolt alkalmazáskorlátot.
A visszaadott szöveg hosszának módosításához használja az utasítást SET . Alapértelmezés szerint az utasítás által SELECT visszaadott szöveges adatok hosszának korlátja 4000 bájt.
Az SQL Server adatbázismotor az 511-ös kivételt emeli ki, és visszaállítja az aktuális futó utasítást, ha az alábbi viselkedések valamelyike következik be:
Az
SELECTutasítás egy 8060 bájtot meghaladó eredménysort vagy köztes munkatáblasort hoz létre.Az
DELETE,INSERTvagyUPDATEutasítás egy 8060 bájtot meghaladó sorban próbál meg műveletet.
Hiba történik, ha nem ad meg oszlopnevet egy vagy CREATE VIEW utasítás által SELECT INTO létrehozott oszlopnak.