!= (Diferente) (Expressão SSIS)
Executa uma comparação para determinar se duas expressões com tipos de dados compatíveis não são iguais. O avaliador de expressões converte automaticamente muitos tipos de dados antes de executar a comparação.
No entanto, alguns tipos de dados requerem que a expressão inclua uma conversão explícita antes de ser avaliada com êxito. Para obter mais informações sobre conversões legais entre tipos de dados, confira Conversão (Expressão do SSIS).
Sintaxe
expression1 != expression2
Argumentos
expression1, expression2
É qualquer expressão válida.
Tipos de resultado
DT_BOOL
Comentários
Se qualquer expressão na comparação for nula, o resultado da comparação será nulo. Se ambas as expressões forem nulas, o resultado será nulo.
O conjunto de expressões, expression1 e expression2, deve seguir uma destas regras:
Numérico Ambas expression1 e expression2 devem ser um tipo de dados numérico. A interseção dos tipos de dados deve ser um tipo de dados numérico, como especificado nas regras sobre as conversões numéricas implícitas que o avaliador de expressões executa. A interseção dos dois tipos de dados numéricos não pode ser nula. Para obter mais informações, consulte Integration Services Data Types in Expressions.
Character Tanto expression1 quanto expression2 devem ser avaliadas como um tipo de dados DT_STR ou DT_WSTR. As duas expressões podem ser avaliadas como tipos de dados de cadeia diferentes.
Observação
Comparações de cadeia de caracteres diferenciam maiúsculas de minúsculas, acentuação, kana e largura.
Date, Time, ou Date/Time Tanto expression1 quanto expression2 devem ser avaliadas como um dos seguintes tipos de dados: DT_DBDATE, DT_DATE, DT_DBTIME, DT_DBTIME2, DT_DBTIMESTAMP, DT_DBTIMESTAMP2, DT_DBTIMESTAPMOFFSET ou DT_FILETIME.
Observação
O sistema não aceita comparações entre uma expressão que avalia um tipo de dados de hora e uma expressão que avalia um tipo de dados de data ou data/hora. O sistema gera um erro.
Ao comparar as expressões, o sistema aplica as seguintes regras de conversão na ordem listada:
Quando as duas expressões avaliarem o mesmo tipo de dados, uma comparação daquele tipo de dados é executada.
Se uma expressão for um tipo de dados DT_DBTIMESTAMPOFFSET, a outra expressão será convertida implicitamente para DT_DBTIMESTAMPOFFSET, e uma comparação de DT_DBTIMESTAMPOFFSET será executada. Para obter mais informações, consulte Integration Services Data Types in Expressions.
Se uma expressão for um tipo de dados DT_DBTIMESTAMP2, a outra expressão será convertida implicitamente para DT_DBTIMESTAMP2, e uma comparação de DT_DBTIMESTAMP2 será executada.
Se uma expressão for um tipo de dados DT_DBTIME2, a outra expressão será convertida implicitamente para DT_DBTIME2, e uma comparação de DT_DBTIME2 será executada.
Se uma expressão for de um tipo diferente de DT_DBTIMESTAMPOFFSET, DT_DBTIMESTAMP2 ou DT_DBTIME2, as expressões serão convertidas para o tipo de dados DT_DBTIMESTAMP antes de serem comparadas.
Ao comparar as expressões, o sistema faz as seguintes suposições:
Se cada expressão for um tipo de dados que inclui segundos fracionais, o sistema assumirá que o tipo de dados com o número de dígitos mínimo para os segundos fracionais tem zeros nos dígitos restantes.
Se cada expressão for um tipo de dados de data, mas somente um tiver um deslocamento de fuso horário, o sistema assumirá que o tipo de dados de data sem o deslocamento de fuso horário estará em UTC (Tempo Universal Coordenado).
Logical Tanto expression1 quanto expression2 devem ser avaliadas como um booliano.
GUID Tanto expression1 quanto expression2 devem ser avaliadas como um tipo de dados DT_GUID.
Binary Tanto expression1 quanto expression2 devem ser avaliadas como um tipo de dados DT_BYTES.
BLOB Tanto expression1 quanto expression2 devem ser avaliadas como o mesmo tipo de dados BLOB (Bloco de Objetos Binários Grandes): DT_TEXT, DT_NTEXT ou DT_IMAGE.
Para obter mais informações sobre tipos de dados, consulte Integration Services Data Types.
Exemplos de expressões
Esse exemplo será avaliado como TRUE somente se a data atual não for 4 de julho de 2003. Para obter mais informações, confira GETDATE (Expressão SSIS).
"7/4/2003" != GETDATE()
Este exemplo será avaliado como TRUE se o valor na coluna ListPrice não for 500.
ListPrice != 500
Este exemplo usa a variável LPrice. Ele será avaliado como TRUE se o valor de LPrice não for 500. O tipo de dados na variável deve ser numérico para que a expressão seja analisada.
@LPrice != 500
Consulte Também
== (Igual a) (Expressão SSIS)
Precedência de operador e capacidade de associação
Operadores (Expressão SSIS)