что такое оператор |в sql и как это работает - PullRequest
0 голосов
/ 22 февраля 2019

Хотелось бы узнать, как работает следующее условие:

where x1 | x2 | x3 | x4 is not null

столбцы x1, x2, x3, x4 обнуляются Это одно и то же?

where x1 is not null or  x2 is not null or   x3 is not null or x4 is not null

1 Ответ

0 голосов
/ 22 февраля 2019

Это побитовое ИЛИ.Вы найдете подробности здесь .

Попробуйте:

DECLARE @int1 INT=0xFF00; --        => 65280
DECLARE @int2 INT=0x000F; --        =>    15
DECLARE @int3 INT=@int1 | @int2; -- => 65295 

SELECT @int1,@int2,@int3,
       CAST(@int3 AS BINARY(2));--  => 0xFF0F

Вы можете видеть, что битовые маски @int1 и @int2 были объединены в 0xFF0F.

Может использоваться для проверки или установки специального бита или группы битов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...