我已經爲你編了一部分代碼,我想知道輸出,我需要你的幫助,因爲沒有任何幫助我的身體,我認爲輸出是A,這是正確的嗎?謝謝。這段代碼的輸出是什麼?
declare @v1 varchar(20),@v2 varchar(20)
select @v1 = 'NULL'
if @v1 is null and @v2 is null
select 'A'
else
select 'B'
編輯:也是@ v2的價值是什麼?謝謝
我已經爲你編了一部分代碼,我想知道輸出,我需要你的幫助,因爲沒有任何幫助我的身體,我認爲輸出是A,這是正確的嗎?謝謝。這段代碼的輸出是什麼?
declare @v1 varchar(20),@v2 varchar(20)
select @v1 = 'NULL'
if @v1 is null and @v2 is null
select 'A'
else
select 'B'
編輯:也是@ v2的價值是什麼?謝謝
我會說這是B,因爲= NULL
和= 'NULL'
是兩個不同的東西。
你爲什麼不自己嘗試一下?
輸出將是B
因爲@v1
被分配了一個字符串「NULL」,這是不一樣的特殊NULL,意思是「沒有價值」
+1這也是我的答案。 – 2010-04-30 14:36:41
2008年MSSQL返回B.這是因爲@ v1是字符串'NULL',而不是實際爲空。如果您將其更改爲
select @v1 = null
然後,它會返回一個
@ v2的價值是什麼? – user329820 2010-04-30 14:41:39
由於沒有賦值(僅聲明),所以@ v2的值爲空。所以想想看,「select @ v1 = null」真的是多餘的,因爲它已經是空的開始。 – 2010-04-30 16:45:42
@ v2是空的,因爲你不assing給它的任何價值。 輸出爲B'cause NULL是不一樣的字符串「NULL」
請原諒我的無知,但它可能會幫助到指定什麼樣的數據庫 - 甲骨文,SQL Server等 – 2010-04-30 14:33:17
你爲什麼不跑它看到了嗎?這是功課嗎? – Aaronaught 2010-04-30 14:34:50
這必須是家庭作業... – 2010-04-30 14:35:45