Yahoo Search Búsqueda en la Web

Resultado de búsqueda

  1. The SQL CASE Expression. The CASE expression goes through conditions and returns a value when the first condition is met (like an if-then-else statement). So, once a condition is true, it will stop reading and return the result. If no conditions are true, it returns the value in the ELSE clause. If there is no ELSE part and no conditions are ...

  2. 22 de feb. de 2024 · La sentencia CASE WHEN de SQL es una herramienta fundamental. Proporciona un enfoque estructurado y flexible de la lógica condicional, que refleja la toma de decisiones cotidiana. Además, su naturaleza intuitiva la convierte en una función accesible y potente de SQL.

    • Información general
    • Sintaxis
    • Argumentos
    • Tipos de valores devueltos
    • Observaciones
    • Ejemplos
    • Ejemplos: Azure Synapse Analytics y Sistema de la plataforma de análisis (PDW)
    • Consulte también

    Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Punto de conexión de análisis SQL en Microsoft FabricAlmacenamiento en Microsoft Fabric

    Evalúa una lista de condiciones y devuelve una de las varias expresiones de resultado posibles.

    La expresión CASE tiene dos formatos:

    •La expresión CASE sencilla compara una expresión con un conjunto de expresiones sencillas para determinar el resultado.

    •La expresión CASE buscada evalúa un conjunto de expresiones booleanas para determinar el resultado.

    Ambos formatos admiten un argumento ELSE opcional.

    Sintaxis para SQL Server, Azure SQL Database y Azure Synapse Analytics.

    Sintaxis para el almacenamiento de datos paralelo.

    input_expression

    La expresión evaluada cuando se utiliza el formato CASE sencillo. input_expression es cualquier expresión válida.

    WHEN when_expression

    Una expresión sencilla con la que se compara input_expression cuando se usa el formato CASE sencillo. when_expression es cualquier expresión válida. Los tipos de datos de input_expression y cada when_expression deben ser iguales o deben ser una conversión implícita.

    THEN result_expression

    La expresión devuelta cuando input_expression igual a when_expression se evalúa como TRUE, o Boolean_expression se evalúa como TRUE. result expression es cualquier expresión válida.

    Valores devueltos

    Expresión CASE sencilla: La expresión CASE sencilla compara la primera expresión con la expresión de cada cláusula WHEN para determinar si se da alguna equivalencia. Si estas expresiones son equivalentes, se devolverá la expresión de la cláusula THEN. •Permite solo una comprobación de igualdad. •En el orden especificado, evalúa input_expression = when_expression por cada cláusula WHEN. •Devuelve la result_expression de la primera relación input_expression = when_expression que se evalúa como TRUE. •Si no hay ninguna relación input_expression = when_expression que se evalúe como TRUE, el Motor de base de datos de SQL Server devuelve la else_result_expression si se especifica una cláusula ELSE, o bien un valor NULL si no se especifica ninguna cláusula ELSE. Expresión CASE buscada: •Evalúa, en el orden especificado, la Boolean_expression de cada cláusula WHEN. •Devuelve la result_expression de la primera Boolean_expression que se evalúa como TRUE. •Si no hay ninguna Boolean_expressionque se evalúe como TRUE, el Motor de base de datosdevuelve la else_result_expression si se especifica una cláusula ELSE, o bien un valor NULL si no se especifica ninguna cláusula ELSE.

    SQL Server solo permite 10 niveles de anidamiento en las expresiones CASE.

    La expresión CASE no se puede utilizar para controlar el flujo de ejecución de los bloques de instrucciones, funciones definidas por el usuario, procedimientos almacenados e instrucciones de Transact-SQL. Para obtener una lista de los métodos de control de flujo, consulte Lenguaje de control de flujo (Transact-SQL).

    La expresión CASE evalúa sus condiciones de forma secuencial y se detiene en la primera condición cuya condición se cumple. En algunas situaciones, se evalúa una expresión antes de que una expresión CASE reciba los resultados de la expresión como entrada. Los errores de evaluación de estas expresiones son posibles. Las expresiones de agregado que aparecen en los argumentos WHEN para una expresión CASE se evalúan primero y, después, se proporcionan a la expresión CASE. Por ejemplo, la siguiente consulta genera un error de división por cero al obtener el valor de agregado MAX. Esto ocurre antes de evaluar la expresión CASE.

    Debe depender solo del orden de evaluación de las condiciones WHEN para las expresiones escalares (incluidas las subconsultas no correlacionadas que devuelven escalares), no para las expresiones de agregado.

    A. Uso de una instrucción SELECT con una expresión CASE sencilla

    En una instrucción SELECT, una expresión CASE sencilla solo permite una comprobación de igualdad; no se pueden hacer otras comparaciones. En este ejemplo se utiliza la expresión CASE para cambiar la presentación de categorías de línea de productos con el fin de hacerla más comprensible.

    B. Uso de una instrucción SELECT con una expresión CASE de búsqueda

    En una instrucción SELECT, la expresión CASE de búsqueda permite sustituir valores en el conjunto de resultados basándose en los valores de comparación. En el ejemplo siguiente se presenta el precio de venta como un comentario basado en el intervalo de precios de un producto.

    C. Uso de CASE en una cláusula ORDER BY

    En los ejemplos siguientes se utiliza la expresión CASE en una cláusula ORDER BY para determinar el criterio de ordenación de las filas según el valor de una columna dada. En el primer ejemplo se evalúe el valor de la columna SalariedFlag de la tabla HumanResources.Employee. Los empleados que tienen la columna SalariedFlag establecida en 1 se devuelven en orden descendente según el BusinessEntityID. Los empleados que tienen la columna SalariedFlag establecida en 0 se devuelven en orden ascendente según el BusinessEntityID. En el segundo ejemplo, el conjunto de resultados se ordena según la columna TerritoryName cuando la columna CountryRegionName es igual a 'Estados Unidos' y según la columna CountryRegionName en las demás filas.

    G. Uso de una instrucción SELECT con una expresión CASE

    En una instrucción SELECT, la expresión CASE permite sustituir valores en el conjunto de resultados basándose en los valores de comparación. En este ejemplo se utiliza la expresión CASE para cambiar la presentación de categorías de línea de productos con el fin de hacerla más comprensible. Cuando un valor no existe, aparece el texto “Not for sale”.

    H. Uso de CASE en una instrucción UPDATE

    En el ejemplo siguiente se usa la expresión CASE en una instrucción UPDATE para determinar el valor establecido en la columna VacationHours para los empleados con el valor de SalariedFlag establecido en 0. Al restar 10 horas de VacationHours da un valor negativo, VacationHours se incrementa en 40 horas; de lo contrario, VacationHours se incrementa en 20 horas.

  3. 23 de may. de 2023 · CASE can be used in any statement or clause that allows a valid expression. For example, you can use CASE in statements such as SELECT, UPDATE, DELETE and SET, and in clauses such as <select_list>, IN, WHERE, ORDER BY, and HAVING. Transact-SQL syntax conventions. Syntax for SQL Server, Azure SQL Database and Azure Synapse Analytics.

  4. 5 de dic. de 2022 · En SQL, la sentencia CASE devuelve resultados basados en la evaluación de ciertas condiciones. Es bastante versátil y puede ser usada en diferentes construcciones. Por ejemplo, puede utilizarla para mostrar valores, ordenar resultados o filtrar registros.

  5. 30 de sept. de 2019 · Sentencia CASE en SQL. La declaración de la sentencia CASE en SQL retorna un valor en una condición especificada. Trataremos de usar una declaración de case en las consultas que fueron seleccionadas junto con la cláusula Where, Order By y Group By. A su vez se puede utilizar en la opción de Insertar declaración.