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 a lekérdezés által visszaadandó oszlopokat.
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. Az ALL az alapértelmezett.
DISTINCT
Megadja, hogy csak egyedi sorok jelenjenek meg az eredményhalmazban. A null értékek a DISTINCT kulcsszó szempontjából egyenlőnek minősülnek.
TOP (kifejezés ) [ PERCENT ] [ WITH TIES ]
Azt jelzi, hogy a lekérdezés eredményhalmazából csak a megadott első halmaz vagy a sorok százaléka lesz visszaadva.
kifejezés lehet a sorok száma vagy százaléka.
A visszamenőleges kompatibilitás érdekében a SELECT utasításokban zárójelek nélküli TOP-kifejezés használata támogatott, de nem javasoljuk. További információ: TOP (Transact-SQL).
< > select_list Az eredményhalmazhoz kijelölendő oszlopok. A kijelölési lista vesszővel elválasztott kifejezések sorozata. A kiválasztási listában megadható kifejezések maximális száma 4096.
*
Megadja, hogy a FROM záradék összes táblájának és nézetének 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ő nevű oszlopokkal rendelkezik. Az adatbázis SalesOrderHeader és SalesOrderDetail tábláinak AdventureWorks2025 például egy ModifiedDate nevű oszlopa van. Ha a két tábla össze van kapcsolva egy lekérdezésben, a SalesOrderDetail bejegyzések módosított dátuma a kiválasztási listában SalesOrderDetail.ModifiedDate néven adható meg.
expression
Egy operátor vagy operátor által összekapcsolt állandó, függvény, oszlopnevek, állandók és függvények tetszőleges kombinációja, vagy egy allekérdezés.
$IDENTITY
Az identitásoszlopot adja vissza. További információ: IDENTITY (Property) (Transact-SQL), ALTER TABLE (Transact-SQL), és CREATE TABLE (Transact-SQL).
Ha a FROM záradékban több tábla is tartalmaz egy IDENTITY tulajdonsággal rendelkező oszlopot, $IDENTITY a megadott táblanévvel (például T1.$IDENTITY) kell minősíteni.
$ROWGUID
A sor GUID oszlopát adja vissza.
Ha a FROM záradékban több tábla is szerepel a ROWGUIDCOL tulajdonsággal, $ROWGUID a megadott táblanévvel kell minősíteni, 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 vagy 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. Használ. egy példány (nemsztatikus) metódus, tulajdonság vagy mező esetében. Használja a :: statikus metódust, tulajdonságot vagy mezőt. A felhasználó által definiált CLR-típus metódusának, tulajdonságának vagy mezőjének meghívásához végrehajtási engedéllyel kell rendelkeznie a típushoz.
property_name
A udt_column_name köztulajdona.
field_name
A nyilvános adatok udt_column_name tagja.
method_name
A udt_column_name egy vagy több argumentumot tartalmazó nyilvános metódusa.
method_name nem lehet mutációs módszer.
Az alábbi példa a tábla típusként Locationpointdefiniált oszlopának értékeit Cities 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 POINT (32, 23), @distance FLOAT;
GO
SELECT Location.Distance (@p)
FROM Cities;
column_alias
Alternatív név a lekérdezés eredményhalmazában szereplő oszlopnév helyére. Megadhat például egy aliast, például a Quantity vagy a Quantity to Date (Mennyiség a dátumig) vagy a Qty (Mennyiség) értéket egy mennyiség nevű oszlophoz.
Az aliasok a kifejezések eredményeinek nevének megadására is használhatók, például:
USE AdventureWorks2022;
GO
SELECT AVG(UnitPrice) AS [Average Price]
FROM Sales.SalesOrderDetail;
column_alias az ORDER BY záradékban használható. A WHERE, GROUP BY vagy HAVING záradékban azonban nem használható. Ha a lekérdezési kifejezés egy DEKLARÁLT KURZOR utasítás része, column_alias nem használható a FOR UPDATE záradékban.
Remarks
A kijelölési listában szereplő szöveges vagy ntext oszlopokhoz visszaadott adatok hossza a következő legkisebb értékre van állítva: a szövegoszlop tényleges mérete, az alapértelmezett TEXTIZE munkamenet-beállítás vagy a kemény kóddal kódolt alkalmazáskorlát. A visszaadott szöveg hosszának módosításához használja a SET utasítást. Alapértelmezés szerint a SELECT utasítással 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és valamelyike következik be:
A SELECT utasítás egy 8060 bájtot meghaladó eredménysort vagy köztes munkatáblasort hoz létre.
A DELETE, INSERT vagy UPDATE utasítás egy 8060 bájtot meghaladó sorban próbál meg műveletet.
Hiba történik, ha a SELECT INTO vagy a CREATE VIEW utasítás által létrehozott oszlopban nincs megadva oszlopnév.
Lásd még:
SELECT-példák (Transact-SQL)
Kifejezések (Transact-SQL)
VÁLASZT (Transact-SQL)