Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistem Platform Analitik (PDW)
Titik akhir analitik SQL di Microsoft Fabric
Gudang di Microsoft Fabric
Database SQL di Microsoft Fabric
Memberlakukan kondisi pada eksekusi pernyataan Transact-SQL. Pernyataan Transact-SQL yang mengikuti IF kata kunci dan kondisinya dijalankan jika kondisi terpenuhi: ekspresi Boolean mengembalikan TRUE. Kata kunci opsional ELSE memperkenalkan pernyataan Transact-SQL lain yang dijalankan ketika IF kondisi tidak terpenuhi: ekspresi Boolean mengembalikan FALSE.
Syntax
IF boolean_expression
{ sql_statement | statement_block }
[ ELSE
{ sql_statement | statement_block } ]
Arguments
boolean_expression
Ekspresi yang mengembalikan TRUE atau FALSE. Jika ekspresi Boolean berisi SELECT pernyataan, SELECT pernyataan harus diapit dalam tanda kurung.
{ sql_statement | statement_block }
Setiap pernyataan Transact-SQL atau pengelompokan pernyataan seperti yang didefinisikan dengan menggunakan blok pernyataan. Kecuali blok pernyataan digunakan, IF kondisi atau ELSE dapat memengaruhi performa hanya satu pernyataan Transact-SQL.
Untuk menentukan blok pernyataan, gunakan kata kunci BEGIN control-of-flow dan END.
Remarks
Konstruksi IF...ELSE dapat digunakan dalam batch, dalam prosedur tersimpan, dan dalam kueri ad hoc. Ketika konstruksi ini digunakan dalam prosedur tersimpan, biasanya untuk menguji keberadaan beberapa parameter.
IFtes dapat disarangkan setelah yang IFlain ELSE atau mengikuti . Batas jumlah tingkat berlapis tergantung pada memori yang tersedia.
Examples
IF DATENAME(weekday, GETDATE()) IN (N'Saturday', N'Sunday')
SELECT 'Weekend';
ELSE
SELECT 'Weekday';
Untuk contoh lainnya, lihat ELSE (IF... LAIN).
Contoh: Azure Synapse Analytics and Analytics Platform System (PDW)
Contoh berikut menggunakan IF...ELSE untuk menentukan mana dari dua respons yang akan ditampilkan pengguna, berdasarkan berat item dalam DimProduct tabel.
-- Uses AdventureWorksDW
DECLARE @maxWeight FLOAT, @productKey INT;
SET @maxWeight = 100.00;
SET @productKey = 424;
IF @maxWeight <= (
SELECT Weight
FROM DimProduct
WHERE ProductKey = @productKey
)
SELECT @productKey AS ProductKey,
EnglishDescription,
Weight,
'This product is too heavy to ship and is only available for pickup.' AS ShippingStatus
FROM DimProduct
WHERE ProductKey = @productKey;
ELSE
SELECT @productKey AS ProductKey,
EnglishDescription,
Weight,
'This product is available for shipping or pickup.' AS ShippingStatus
FROM DimProduct
WHERE ProductKey = @productKey;