Operadores VARBYTE - Amazon Redshift

Operadores VARBYTE

A tabela a seguir lista os operadores VARBYTE. O operador trabalha com valor binário do tipo de dados VARBYTE. Se uma ou ambas as entradas forem nulas, o resultado será null.

Operadores compatíveis

Operador Descrição Tipo de retorno
< Menor que BOOLEAN
<= Menor ou igual a BOOLEAN
= Equal BOOLEAN
> Maior que BOOLEAN
>= Maior ou igual a BOOLEAN
!= ou <> Not equal BOOLEAN
|| Concatenação VARBYTE
+ Concatenação VARBYTE
~ Bitwise not VARBYTE
& Bitwise and VARBYTE
| Bitwise or VARBYTE
# Bitwise xor VARBYTE

Exemplos

Nos exemplos a seguir, o valor de 'a'::VARBYTE é 61, e o valor de 'b'::VARBYTE é 62. O :: lança as strings no tipo de dados VARBYTE. Para obter mais informações sobre os tipos de dados de transmissão, consulte CAST.

Para comparar se 'a' é menor que 'b' usando o operador <, use o exemplo a seguir.

SELECT 'a'::VARBYTE < 'b'::VARBYTE AS less_than; +-----------+ | less_than | +-----------+ | true | +-----------+

Para comparar se 'a' é igual a 'b' usando o operador =, use o exemplo a seguir.

SELECT 'a'::VARBYTE = 'b'::VARBYTE AS equal; +-------+ | equal | +-------+ | false | +-------+

Para concatenar dois valores binários usando o operador ||, use o exemplo a seguir.

SELECT 'a'::VARBYTE || 'b'::VARBYTE AS concat; +--------+ | concat | +--------+ | 6162 | +--------+

Para concatenar dois valores binários usando o operador +, use o exemplo a seguir.

SELECT 'a'::VARBYTE + 'b'::VARBYTE AS concat; +--------+ | concat | +--------+ | 6162 | +--------+

Para negar cada bit do valor binário da entrada usando a função FROM_VARBYTE, use o exemplo a seguir. A string 'a' é avaliada como 01100001. Para obter mais informações, consulte FROM_VARBYTE.

SELECT FROM_VARBYTE(~'a'::VARBYTE, 'binary'); +--------------+ | from_varbyte | +--------------+ | 10011110 | +--------------+

Para aplicar o operador & nos dois valores binários de entrada, use o exemplo a seguir. A string 'a' é avaliada como 01100001 e 'b' é avaliada como 01100010.

SELECT FROM_VARBYTE('a'::VARBYTE & 'b'::VARBYTE, 'binary'); +--------------+ | from_varbyte | +--------------+ | 01100000 | +--------------+