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-adatbázis a Microsoft Fabricben
Egy skaláris értéket hasonlít össze egy egyoszlopos értékkészlettel.
Transact-SQL szintaxis konvenciók
Syntax
scalar_expression { = | <> | != | > | >= | !> | < | <= | !< } ALL ( subquery )
Arguments
scalar_expression
Bármely érvényes kifejezés.
{ = | <> | != | > | >= | !> | < | <= | !< }
Összehasonlító operátor.
subquery
Egy olyan al lekérdezés, amely egy oszlop eredményhalmazát adja vissza. A visszaadott oszlop adattípusának meg kell egyeznie a scalar_expression adattípusával.
Egy korlátozott SELECT utasítás, amelyben az ORDER BY záradék és az INTO kulcsszó nem engedélyezett.
Eredménytípusok
Boolean
Eredményérték
IGAZ értéket ad vissza, ha a megadott összehasonlítás igaz az összes párra (scalar_expression, x), ha x az egyoszlopos készlet értéke. Ellenkező esetben HAMIS értéket ad vissza.
Remarks
Az ALL megköveteli, hogy a scalar_expression pozitívan hasonlítson össze minden olyan értékkel, amelyet az alkérelmek visszaadnak. Ha például az alkérdezés 2 és 3 értéket ad vissza, akkor scalar_expression<= ALL (subquery) értéke IGAZ lesz a 2-scalar_expression . Ha az al lekérdezés 2 és 3 értéket ad vissza, scalar_expression = AZ ÖSSZES (subquery) értéke HAMIS, mert az alquery egyes értékei (a 3 értéke) nem felelnek meg a kifejezés feltételeinek.
Az olyan utasítások esetében, amelyek megkövetelik, hogy a scalar_expression pozitívan hasonlítson össze csak egy olyan értékkel, amelyet az alquery visszaadott, tekintse meg a SOME | ANY (Transact-SQL).
A két kifejezés egyenlőségének összehasonlításához és a valódi vagy hamis eredmény biztosításához lásd: IS [NOT] DISTINCT FROM (Transact-SQL).
Ez a cikk az ALL kifejezésre hivatkozik, ha egy alqueryvel együtt használják. AZ ALL használható az UNION és a SELECT használatával is.
Examples
Az alábbi példa egy tárolt eljárást hoz létre, amely meghatározza, hogy az AdventureWorks2025 adatbázisban megadott SalesOrderID összes komponens előle lehet állítani a megadott napszám alatt. A példa egy alquery használatával hozza létre az DaysToManufacture adott SalesOrderIDösszetevő összes összetevőjének értékeinek listáját, majd megerősíti, hogy az DaysToManufacture összes a megadott napon belül van.
-- Uses AdventureWorks
CREATE PROCEDURE DaysToBuild @OrderID INT, @NumberOfDays INT
AS
IF
@NumberOfDays >= ALL
(
SELECT DaysToManufacture
FROM Sales.SalesOrderDetail
JOIN Production.Product
ON Sales.SalesOrderDetail.ProductID = Production.Product.ProductID
WHERE SalesOrderID = @OrderID
)
PRINT 'All items for this order can be manufactured in specified number of days or less.'
ELSE
PRINT 'Some items for this order can''t be manufactured in specified number of days or less.' ;
Az eljárás teszteléséhez hajtsa végre az eljárást az SalesOrderID 49080egyik napokat igénylő 2 összetevővel és két, 0 napot igénylő összetevővel. Az alábbi első állítás megfelel a feltételeknek. A második lekérdezés nem.
EXECUTE DaysToBuild 49080, 2 ;
Itt van az eredmények összessége.
All items for this order can be manufactured in specified number of days or less.
EXECUTE DaysToBuild 49080, 1 ;
Itt van az eredmények összessége.
Some items for this order can't be manufactured in specified number of days or less.