在C#中,我有一個:MS SQL位變量可不可以(@a)?
a = !a
(如果假使它真的,如果是真的使得假)
在SQL我想要做同樣的一個位變量
像:
declare @a bit
set @a = 1
select @a
set @a = not (@a)
select @a
可以嗎?
我總是可以做一個IF,但這將「更好看」 :)
在C#中,我有一個:MS SQL位變量可不可以(@a)?
a = !a
(如果假使它真的,如果是真的使得假)
在SQL我想要做同樣的一個位變量
像:
declare @a bit
set @a = 1
select @a
set @a = not (@a)
select @a
可以嗎?
我總是可以做一個IF,但這將「更好看」 :)
通過使用按位不
的〜位運算符的表達式執行邏輯逐位NOT,取每個比特依次嘗試。如果表達式的值爲0,則結果集中的位被設置爲1;否則,結果中的位被清除爲0值。換句話說,其中一個變爲零,零變爲1。
declare @a bit
set @a = 0
select @a
set @a = [email protected]
select @a
讓它1
declare @a bit
set @a = 1
select @a
set @a = [email protected]
select @a
您可以使用XOR運營商爲。
declare @a bit
set @a = 1
select @a
set @a = @a^1
select @a
set @a = @a^1
select @a
下面的代碼:
set @a = @a^1
+1。我學到了什麼,thx。 – 2010-09-29 14:01:51
〜(按位不)\t返回數字的補碼。 – Branimir 2010-09-29 14:03:31