Recherche…


Concaténation: Opérateur || ou fonction concat ()

Oracle SQL et PL / SQL || L'opérateur vous permet de concaténer deux chaînes ou plus.

Exemple:

En supposant la table customers suivante:

 id  firstname    lastname
---  -----------  ----------
  1  Thomas       Woody

Question:

 SELECT firstname || ' ' || lastname || ' is in my database.' as "My Sentence" 
   FROM customers;

Sortie:

My Sentence
---------------------------------
Thomas Woody is in my database.

Oracle prend également en charge la fonction standard SQL CONCAT(str1, str2) :

Exemple:

Question:

 SELECT CONCAT(firstname, ' is in my database.') from customers;

Sortie:

Expr1
---------------------------------
Thomas is in my database.

PLUS HAUT

La fonction UPPER vous permet de convertir toutes les lettres minuscules d'une chaîne en majuscules.

SELECT UPPER('My text 123!') AS result FROM dual;

Sortie:

RESULT    
------------
MY TEXT 123!

INITCAP

La fonction INITCAP convertit la casse d'une chaîne de sorte que chaque mot commence par une majuscule et que toutes les lettres suivantes soient en minuscule.

SELECT INITCAP('HELLO mr macdonald!') AS NEW FROM dual;

Sortie

NEW
-------------------
Hello Mr Macdonald!

INFÉRIEUR

LOWER convertit toutes les majuscules d'une chaîne en minuscules.

SELECT LOWER('HELLO World123!') text FROM dual;

Les sorties:

texte
bonjour world123!

Expression régulière

Disons que nous voulons remplacer uniquement les nombres à 2 chiffres: l'expression régulière les trouvera avec (\d\d)

SELECT REGEXP_REPLACE ('2, 5, and 10 are numbers in this example', '(\d\d)', '#')
FROM dual;

Résulte en:

'2, 5, and # are numbers in this example'

Si je veux échanger des parties du texte, j'utilise \1 , \2 , \3 pour appeler les chaînes correspondantes:

 SELECT REGEXP_REPLACE ('swap around 10 in that one ', '(.*)(\d\d )(.*)', '\3\2\1\3')
 FROM dual;

SUBSTR

SUBSTR récupère une partie d'une chaîne en indiquant la position de départ et le nombre de caractères à extraire

SELECT SUBSTR('abcdefg',2,3) FROM DUAL;

résultats:

bcd

Pour compter à partir de la fin de la chaîne, SUBSTR accepte un nombre négatif comme second paramètre, par exemple

SELECT SUBSTR('abcdefg',-4,2) FROM DUAL;

résultats:

de

Pour obtenir le dernier caractère d'une chaîne: SUBSTR(mystring,-1,1)

LTRIM / RTRIM

LTRIM et RTRIM suppriment les caractères du début ou de la fin (respectivement) d'une chaîne. Un ensemble d'un ou plusieurs caractères peut être fourni (par défaut un espace) à supprimer.

Par exemple,

select LTRIM('<===>HELLO<===>', '=<>')
      ,RTRIM('<===>HELLO<===>', '=<>')
from dual;

Résultats:

HELLO<===>
<===>HELLO


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow