Les expressions de valeur de Sql

Une expression SQL peut être simple ou complexe. L'expression peut contenir des valeurs littérales, les noms de colonnes, les paramètres, les variables hôte, les sous-requêtes, connecteurs logiques, et des opérateurs arithmétiques. Indépendamment de sa complexité, une expression doit réduire à une seule valeur.

Sommaire

Pour cette raison, des expressions SQL sont généralement connus comme les expressions de valeur. Combinaison de plusieurs expressions de valeurs en une seule expression est possible, pour autant que les expressions de valeurs de composants de réduire à des valeurs qui ont des types de données compatibles.

SQL dispose de cinq types d'expressions de valeur:

  • Expressions de valeur de chaîne

  • Expressions de valeur numérique

  • Les expressions de valeur de date et d'heure

  • Expressions de valeur d'intervalle

  • Expressions de valeur conditionnelle

Expressions de valeur de chaîne

Le plus simple expression de valeur de chaîne spécifie une valeur de chaîne unique. D'autres possibilités incluent une référence de colonne, une fonction de jeu, une sous-requête scalaire, un AFFAIRE expression, CAST expression, ou une expression complexe de valeur de chaîne.

Un seul opérateur est possible dans une expression de valeur de chaîne: le opérateur de concaténation. Vous pouvez concaténer l'une des expressions de valeur avec une autre expression pour créer une expression plus complexe de valeur de chaîne. Une paire de lignes verticales (||) Représente l'opérateur de concaténation. Le tableau suivant montre quelques exemples d'expressions de valeur de chaîne.

ExpressionProduit
'Peanut' || 'fragile''Arachide cassants'
'Jelly' || '' || 'Haricots'«Jelly beans»
FIRST_NAME || '' || LAST_NAME«Joe Smith»
B'1100111 '|| B'01010011''110011101010011'
'' || '«Asperges'Asperges'
«Asperges '||' ''Asperges'
'Comme' || '' || 'Par' || '' || 'Agus''Asperges'

Si vous concaténez une chaîne à une chaîne de longueur nulle, le résultat est le même que la chaîne d'origine.

Expressions de valeur numérique




Dans expressions numériques de valeur, vous pouvez appliquer l'addition, soustraction, multiplication, division et les opérateurs de données de type numérique. L'expression doit réduire à une valeur numérique. Les composants d'une expression numérique de la valeur peuvent être de différents types de données aussi longtemps que tous les types de données sont numériques.

Le type de données du résultat dépend des types de composants à partir de laquelle vous dérivez le résultat de données. Même ainsi, le standard SQL ne spécifie pas de façon rigide type qui résulte d'une combinaison spécifique de composants source expression. Voilà en raison des différences entre les plates-formes matérielles. Consultez la documentation de votre plate-forme spécifique lorsque vous mélangez les types de données numériques.

Voici quelques exemples d'expressions de valeurs numériques:

  • -27

  • 49 + 83

  • 5 * (12 - 3)

  • PROTÉINES + FAT + GLUCIDES

  • PIEDS / 5280

  • COÛT *: multiplierA

Les expressions de valeur de date et d'heure

Les expressions de valeur de date et d'heure effectuer des opérations sur les données qui traitent avec les dates et heures. Ces expressions de valeur peuvent contenir des composants qui sont des types DATE, TEMPS, TIMESTAMP, ou INTERVALLE. Le résultat d'une expression de valeur datetime est toujours un type datetime (DATE, TEMPS, ou TIMESTAMP). L'expression suivante, par exemple, donne la date une semaine à partir d'aujourd'hui:

'7' JOUR CURRENT_DATE + INTERVALLE

Les temps sont maintenues dans le temps universel coordonné (UTC) - connu dans le Royaume-Uni comme Greenwich Mean Time - mais vous pouvez spécifier un décalage pour faire le bon moment pour tout fuseau horaire particulier. Pour fuseau horaire local de votre système, vous pouvez utiliser la syntaxe simple donnée dans l'exemple suivant:

TIME '22: 55: 00 'au niveau local

Alternativement, vous pouvez spécifier cette valeur, le long chemin:

TIME '22: 55: 00 'AT TIME ZONE INTERVALLE' -08,00 'heures aux minutes

Cette expression définit l'heure locale que le fuseau horaire de Portland, en Oregon, qui est huit heures plus tôt que celui de Greenwich, en Angleterre.

Expressions de valeur d'intervalle

Si vous soustrayez un datetime d'un autre, vous obtenez une intervalle. L'ajout d'une date-heure à l'autre n'a pas de sens, si SQL ne vous permet pas de le faire. Si vous ajoutez deux intervalles ensemble ou soustraire un intervalle d'un autre intervalle, le résultat est un intervalle. Vous pouvez également soit multiplier ou diviser un intervalle par une constante numérique.

SQL dispose de deux types d'intervalles: année-mois et jour-temps. Pour éviter toute ambiguïté, vous devez spécifier lequel utiliser dans une expression d'intervalle. L'expression suivante, par exemple, donne l'intervalle en années et mois jusqu'à ce que vous atteignez l'âge de la retraite:

(BIRTHDAY_65 - CURRENT_DATE) année à mois

L'exemple suivant donne un intervalle de 40 jours:

'23' INTERVAL DAY '17' + JOUR INTERVALLE

L'exemple qui suit approximativement le nombre total de mois qu'une mère de cinq enfants a été enceinte (en supposant qu'elle est pas numéro six attendant le moment!):

'9' mois d'intervalle * 5

Les intervalles peuvent être aussi bien négatives que positives et peut consister en une expression de valeur ou une combinaison des expressions de valeur qui évalue à un intervalle.

Expressions de valeur conditionnelle

La valeur d'un expression conditionnelle de la valeur dépend d'une condition. Les expressions de valeurs conditionnelles AFFAIRE, NULLIF, et COALESCE sont beaucoup plus complexes que les autres types d'expressions de valeurs.


» » » » Les expressions de valeur de Sql