== (Igual) (SSIS)

Executará uma comparação para determinar se duas expressões forem iguais. O avaliador de expressões converte automaticamente muitos tipos de dados antes de executar a comparação. Para obter mais informações, consulte Conversão de tipos de dados implícitos em expressões.

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, consulte Cast (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 avaliadas como um tipo de dados numérico. A intersecçã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 Conversão de tipos de dados implícitos em expressões.

  • Caractere Ambas expression1 e expression2 devem ser avaliados 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çãoObservação

    Comparações de cadeia de caracteres diferenciam maiúsculas de minúsculas, acentuação, kana e largura.

  • Data, Hora ou Data/Hora   Ambas expression1 e 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çãoObservaçã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 Tipos de dados do Integration Services em expressões.

    • 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).

  • Lógico   Ambas expression1 e expression2 devem ser avaliadas como um Booleano.

  • GUID   Ambas expression1 e expression2 devem ser avaliadas como o tipo de dados DT_GUID.

  • Binário   Ambas expression1 e expression2 devem ser avaliadas como o tipo de dados DT_BYTES.

  • BLOB   Ambas expression1 e expression2 devem ser avaliadas como o mesmo tipo de dados BLOB (Bloco de objeto binário grande) : DT_TEXT, DT_NTEXT ou DT_IMAGE.

Para obter mais informações sobre tipos de dados, consulte Tipos de dados do Integration Services.

Exemplos

Este exemplo será avaliado como TRUE se a data atual for 4 de julho de 2003. Para obter mais informações, consulte GETDATE (SSIS).

"7/4/2003" == GETDATE()

Este exemplo será avaliado como TRUE se o valor na coluna ListPrice for 500.

ListPrice == 500

Este exemplo usa a variável LPrice. Ele será avaliado como TRUE se o valor de LPrice for 500. O tipo de dados da variável deve ser numérico para que a expressão seja analisada com sucesso.

@LPrice == 500