[英]How do I identify a blank uniqueidentifier in SQL Server 2005?
我正在將一個uniqueidentifier
變成一個看起來像這樣的存儲過程
00000000-0000-0000-0000-000000000000
。
這看起來很簡單,但如何確定這是一個空白的uniqueidentifier
?
如果我得到像這樣的值DDB72E0C-FC43-4C34-A924-741445153021
我想做X
如果我得到這樣的值00000000-0000-0000-0000-000000000000
我做Y.
是否有更優雅的方式,然后計算零?
提前致謝
相比於
cast(cast(0 as binary) as uniqueidentifier)
?
只需創建一個EmptyGuid變量並與之進行比較:
DECLARE @EmptyGuid UniqueIdentifier
SET @EmptyGuid = '00000000-0000-0000-0000-000000000000'
IF (@TheGuid = '00000000-0000-0000-0000-000000000000')
SELECT 'Do Y'
ELSE
SELECT 'Do X'
這也有效。
DECLARE @EmptyGuid UNIQUEIDENTIFIER = CONVERT(UNIQUEIDENTIFIER, 0x0);
SELECT @EmptyGuid
最佳解決方案是為空GUID使用常量
DECLARE @EmptyGuid UNIQUEIDENTIFIER
SET @EmptyGuid = '00000000-0000-0000-0000-000000000000'
要么
DECLARE @EmptyGuid UNIQUEIDENTIFIER
SET @EmptyGuid = 0x0
你只是比較它們
IF @parameter = @EmptyGuid
DO Y
ELSE
DO X
注意:您不需要使用強制轉換和轉換
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.