Expresiones de valor Sql

Una expresión SQL puede ser simple o compleja. La expresión puede contener valores literales, nombres de columna, parámetros, variables del lenguaje principal, subconsultas, conectores lógicos y operadores aritméticos. Independientemente de su complejidad, una expresión debe reducir a un solo valor.

Por esta razón, expresiones SQL se conocen comúnmente como expresiones de valor. La combinación de múltiples expresiones de valor en una sola expresión es posible, siempre y cuando las expresiones valor de componente se reducen a valores que tienen tipos de datos compatibles.

SQL tiene cinco tipos de expresiones de valor:

  • Expresiones de valor Cadena

  • Expresiones valor numérico

  • Expresiones de valor de fecha y hora

  • Expresiones de valor de intervalo

  • Expresiones de valor condicional

Expresiones de valor Cadena

Lo más simple expresión valor de cadena especifica un solo valor de cadena. Otras posibilidades incluyen una referencia de columna, una función de conjunto, una subconsulta escalar, un CASO expresión, una ELENCO expresión, o un complejo de expresión valor de cadena.

Sólo un operador es posible en una expresión de valor de cadena: el operador de concatenación. Usted puede concatenar cualquiera de las expresiones de valor con otra expresión para crear una más compleja expresión valor de cadena. Un par de líneas verticales (||) Representa el operador de concatenación. La siguiente tabla muestra algunos ejemplos de expresiones de valor de cadena.

ExpresiónProduce
'Peanut' || 'frágil''Cacahuete frágil'
'Jelly' || '' || 'Frijol''Frijolitos confitados'
FIRST_NAME || '' || LAST_NAME'Joe Smith'
B'1100111 '|| B'01010011'"110011101010011"
'' || 'Espárragos''Espárragos'
|| 'Espárragos' '''Espárragos'
'Como' || '' || 'Par' || '' || 'Agus''Espárragos'

Si concatena una cadena a una cadena de longitud cero, el resultado es el mismo que la cadena original.

Expresiones valor numérico

En expresiones de valores numéricos, puede aplicar los suma, resta, multiplicación y división de los operadores a los datos de tipo numérico. La expresión debe reducir a un valor numérico. Los componentes de un valor numérico expresión pueden ser de diferentes tipos de datos, siempre y cuando todas los tipos de datos son numéricos.

El tipo de datos del resultado depende de los tipos de datos de los componentes desde la que se derivan del resultado. Aun así, el estándar SQL no especifica de forma rígida del tipo que resulta de cualquier combinación específica de componentes fuente de expresión. Eso es debido a las diferencias entre las plataformas de hardware. Consulte la documentación de su plataforma específica cuando se está mezclando tipos de datos numéricos.

Estos son algunos ejemplos de expresiones de valores numéricos:

  • -27

  • 49 + 83

  • 5 * (12 - 3)

  • PROTEÍNA + FAT + CARBOHIDRATOS

  • PIES / 5280

  • COSTE *: multiplierA

Expresiones de valor de fecha y hora

Expresiones de valor de fecha y hora realizar operaciones en los datos que tienen que ver con las fechas y horas. Estas expresiones de valor pueden contener componentes que son de los tipos FECHA, HORA, TIMESTAMP, o INTERVALO. El resultado de una expresión de valor datetime es siempre un tipo datetime (FECHA, HORA, o TIMESTAMP). La siguiente expresión, por ejemplo, da la fecha de una semana a partir de hoy:

'7' DÍA CURRENT_DATE + INTERVALO

Los tiempos se mantienen en Tiempo Universal Coordinado (UTC) - conocido en el Reino Unido como meridiano de Greenwich - pero se puede especificar un desplazamiento para que la hora correcta para cualquier zona horaria en particular. Por la zona horaria local de su sistema, puede utilizar la sintaxis simple dada en el ejemplo siguiente:

TIEMPO '22: 55: 00 'EN LOCAL

Alternativamente, puede especificar este valor el camino más largo:

TIEMPO '22: 55: 00 "EN TIEMPO ZONA INTERVALO '-08,00' HORA AL MINUTO

Esta expresión define el tiempo local, como la zona horaria de Portland, Oregon, que es de ocho horas antes que el de Greenwich, Inglaterra.

Expresiones de valor de intervalo

Si se resta un solo datetime de otra, se obtiene una intervalo. Añadiendo una fecha y hora a otro no tiene sentido, por lo que SQL no le permite hacerlo. Si agrega dos intervalos juntos o restar un intervalo de otro intervalo, el resultado es un intervalo. También puede tampoco multiplicar o dividir un intervalo por una constante numérica.

SQL tiene dos tipos de intervalos: año mes y durante el día. Para evitar ambigüedades, debe especificar cuál utilizar en una expresión de intervalo. La siguiente expresión, por ejemplo, da el intervalo en años y meses hasta que alcance la edad de jubilación:

(BIRTHDAY_65 - CURRENT_DATE) AÑO AL MES

El siguiente ejemplo se da un intervalo de 40 días:

'23' DAY INTERVALO '17' DÍA + INTERVALO

El ejemplo que sigue se aproxima al número total de meses de que una madre de cinco hijos ha estado embarazadas (asumiendo que ella no está actualmente esperando número seis!):

'9' MES INTERVALO * 5

Los intervalos pueden ser tanto negativos como positivos y pueden consistir en cualquier expresión de valor o combinación de expresiones de valor que se evalúa como un intervalo.

Expresiones de valor condicional

El valor de una expresión de valor condicional depende de una condición. Las expresiones de valor condicional CASO, NULLIF, y COALESCE son significativamente más complejo que los otros tipos de expresiones de valor.




» » » » Expresiones de valor Sql