Share via


!= (Diferente) (SSIS)

Realiza una comparación para determinar si dos expresiones con tipos de datos compatibles no son iguales. El evaluador de expresiones convierte automáticamente muchos tipos de datos antes de realizar la comparación.

Sin embargo, algunos tipos de datos requieren que la expresión incluya una conversión explícita para que se pueda evaluar correctamente. Para obtener más información sobre conversiones válidas entre tipos de datos, vea Conversión de tipos (SSIS).

Sintaxis


expression1 != expression2
        

Argumentos

  • expression1, expression2
    Cualquier expresión válida.

Tipos de resultado

DT_BOOL

Notas

Si una de las expresiones de la comparación es NULL, el resultado de la comparación es NULL. Si ambas expresiones son NULL, el resultado es NULL.

El conjunto de expresiones expression1 y expression2 debe cumplir una de las siguientes reglas:

  • Numeric   expression1 y expression2 deben ser un tipo de datos numérico. La intersección de los tipos de datos debe ser un tipo de datos numérico, tal como se especifica en las reglas para las conversiones numéricas implícitas que realiza el evaluador de expresiones. La intersección de dos tipos de datos numéricos no puede ser NULL. Para obtener más información, vea Conversión implícita de tipo de datos en expresiones.

  • Character   expression1 y expression2 deben devolver un tipo de datos DT_STR o DT_WSTR. Las dos expresiones pueden tener tipos de datos de cadena distintos.

    [!NOTA]

    En las comparaciones de cadenas se distingue mayúsculas de minúsculas, caracteres acentuados, tipos de kana y el ancho.

  • Date, Time, o Date/Time   expression1 y expression2 deben devolver uno de los siguientes tipos de datos: DT_DBDATE, DT_DATE, DT_DBTIME, DT_DBTIME2, DT_DBTIMESTAMP, DT_DBTIMESTAMP2, DT_DBTIMESTAPMOFFSET o DT_FILETIME.

    [!NOTA]

    El sistema no admite comparaciones entre una expresión que devuelve un tipo de datos de hora y una expresión que devuelve un tipo de datos de fecha o de fecha/hora. El sistema genera un error.

    Al comparar expresiones, el sistema aplica las reglas de conversión siguientes en el orden enumerado:

    • Cuando las dos expresiones devuelven el mismo tipo de datos, se realiza una comparación de ese tipo de datos.

    • Si una expresión es un tipo de datos DT_DBTIMESTAMPOFFSET, la otra expresión se convierte en DT_DBTIMESTAMPOFFSET implícitamente y se realiza una comparación de DT_DBTIMESTAMPOFFSET. Para obtener más información, vea Tipos de datos de Integration Services en las expresiones.

    • Si una expresión es un tipo de datos DT_DBTIMESTAMP2, la otra expresión se convierte en DT_DBTIMESTAMP2 implícitamente y se realiza una comparación de DT_DBTIMESTAMP2.

    • Si una expresión es un tipo de datos DT_DBTIME2, la otra expresión se convierte en DT_DBTIME2 implícitamente y se realiza una comparación de DT_DBTIME2.

    • Si una expresión es de un tipo de datos que no es DT_DBTIMESTAMPOFFSET, DT_DBTIMESTAMP2 o DT_DBTIME2, las expresiones se convierten en el tipo de datos DT_DBTIMESTAMP antes de compararse.

    Al comparar las expresiones, el sistema hace las suposiciones siguientes:

    • Si cada expresión es un tipo de datos que incluye fracciones de segundo, el sistema supone que el tipo de datos con el menor número de dígitos por fracciones de segundo tiene ceros para los dígitos restantes.

    • Si cada expresión es un tipo de datos de fecha, pero sólo una tiene un ajuste de zona horaria, el sistema supone que el tipo de datos de fecha sin ajuste de zona horaria está en hora universal coordinada (UTC).

  • Logical   expression1 y expression2 deben devolver un valor booleano.

  • GUID   expression1 y expression2 deben devolver valores de tipo DT_GUID.

  • Binary   expression1 y expression2 deben devolver valores de tipo DT_BYTES.

  • BLOB   expression1 y expression2 deben devolver el mismo tipo de datos de Bloque de objetos binarios grandes (BLOB): DT_TEXT, DT_NTEXT o DT_IMAGE.

Para obtener más información acerca de los tipos de datos, vea Tipos de datos de Integration Services.

Ejemplos

Este ejemplo sólo devuelve TRUE si la fecha actual no es el 4 de julio de 2003. Para obtener más información, vea GETDATE (SSIS).

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

Este ejemplo devuelve TRUE si el valor de la columna ListPrice no es 500.

ListPrice != 500

Este ejemplo usa la variable LPrice. Devuelve TRUE si el valor de LPrice no es 500. El tipo de datos de la variable debe ser numérico para que se pueda analizar la expresión.

@LPrice != 500