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.
Vonatkozik a következőkre: SQL Server 2022 (16.x)
Azure SQL Database
Azure SQL Managed Instance
SQL analytics endpoint in Microsoft Fabric
Warehouse in Microsoft Fabric SQL
database in Microsoft Fabric
Számsorozatot hoz létre egy adott intervallumon belül. Az intervallumat és a sorozatértékek közötti lépést a felhasználó határozza meg.
Kompatibilitási szint 160
GENERATE_SERIES Kompatibilitási szint legalább 160 legyen. Ha a kompatibilitási szint alacsonyabb, mint 160, az adatbázis motor nem találja meg a GENERATE_SERIES függvényt.
Az adatbázisok kompatibilitási szintjének módosításához tekintse meg vagy módosítsa az adatbázis kompatibilitási szintjét.
Transact-SQL szintaxis konvenciók
Szemantika
GENERATE_SERIES ( start , stop [ , step ] )
Arguments
start
Az első érték az intervallumban. A start változóként, literálisként vagy skaláris kifejezésként van meghatározva, tinyint, smallint, int, bigint, tizedes vagy numerikus típusú.
állj
Az utolsó érték az intervallumban. A stop változóként, literális vagy skaláris kifejezésként van meghatározva, tinyint, smallint, int, bigint, tizedes vagy numerikus típusú. A sorozat akkor áll meg, amikor az utolsó generált lépésérték meghaladja a megállítást .
A stopadattípusának meg kell egyeznie a start adattípusával.
[ lépés ]
Jelzi, hogy a sorozat lépései között hány értéket lehet növelni vagy csökkenteni.
A lépéstinyint, smallint, int, bigint, decimális vagy numerikustípusú kifejezés.
A lépés lehet negatív vagy pozitív, de nem lehet nulla (0).
Ez az argumentum nem kötelező. A lépés alapértelmezett értéke 1, ha a start kisebb, mint a megállítás, egyébként az alapértelmezett érték -1, ha a start nagyobb, mint a megállítás.
Ha a start kisebb, mint a megállás , és a lépéshez negatív értéket jelölünk meg, vagy ha a start nagyobb, mint a stop , és pozitív értéket jelölünk meg a lépésnek, akkor üres eredményhalmazt adnak vissza.
Visszatérési típusok
Egy egyoszlopos táblázatot ad vissza, amely olyan értéksorozatot tartalmaz, amelyek mindegyike lépések szerint eltér az előzőtől. Az oszlop neve .value A kimenet ugyanaz a típus, mint a start és stop (start) és a leállítás.
Permissions
Ehhez nem szükséges GENERATE_SERIESengedély. Azonban a felhasználónak EXECUTE engedélyre van szüksége az adatbázison, valamint engedélyre bármilyen adat lekérdezéséhez, amelyet bemenetként használnak.
Példák
Az alábbi példák a hívás GENERATE_SERIESszintaxisát mutatják be.
A. Generálj egy egész értéksorozatot 1 és 10 között 1 lépésekben (alapértelmezett)
SELECT value
FROM GENERATE_SERIES(1, 10);
Itt van az eredmények összessége.
value
-----------
1
2
3
4
5
6
7
8
9
10
B. Generáljunk egy egész szám sor értéket 1 és 50 között 5-ös lépésekben
SELECT value
FROM GENERATE_SERIES(1, 50, 5);
Itt van az eredmények összessége.
value
-----------
1
6
11
16
21
26
31
36
41
46
C. Generáljunk egy tizedes értéksorozatot 0,0 és 1,0 között 0,1-es lépésekben
DECLARE @start decimal(2, 1) = 0.0;
DECLARE @stop decimal(2, 1) = 1.0;
DECLARE @step decimal(2, 1) = 0.1;
SELECT value
FROM GENERATE_SERIES(@start, @stop, @step);
Itt van az eredmények összessége.
value
---------------------------------------
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0