PostgreSQL Fonction SUBSTRING() avec exemple Regex
โก Rรฉsumรฉ intelligent
PostgreSQL SOUS-TรTE extracts renvoie une partie d'une chaรฎne, en utilisant une position de dรฉpart et une longueur optionnelles, et il compare รฉgalement le texte ร une expression rรฉguliรจre POSIX pour extraire des modรจles tels que des nombres ou des codes.

Qu'est-ce que le PostgreSQL Sous-chaรฎne ?
Le PostgreSQL La fonction substring vous aide ร extrairetracLa fonction `t` renvoie une partie d'une chaรฎne de caractรจres. Au lieu de renvoyer la chaรฎne entiรจre, elle n'en renvoie qu'une portion, ce qui est utile pour supprimer les codes et lire les champs de largeur fixe.
Syntaxe
Le PostgreSQL La fonction sous-chaรฎne prend la syntaxe suivante :
substring( string [from starting_position] [for length] )
Paramรจtres
Les paramรจtres suivants sont utilisรฉs avec la fonction substring :
| string | La chaรฎne source dont le type de donnรฉes est varchar, char, string, etc. |
| position de dรฉpart | Paramรจtre optionnel. Il indique l'endroit oรน l'extracLa chaรฎne commencera. Si vous omettez ce paramรจtre, l'exempletracLa sรฉquence commence ร la position 1, qui est le premier caractรจre de la chaรฎne. |
| longueur | Paramรจtre optionnel. Il indique le nombre de caractรจres ร extrairetracextrait de la chaรฎne. Si vous omettez ce paramรจtre, la fonction extracts de la position de dรฉpart ร la fin de la chaรฎne. |
Exemples
Dans cet exemple, nous voulons extract les 4 premiers caractรจres du mot Guru99:
SELECT substring('Guru99' for 4);
La commande renverra ce qui suit :
Nous n'avons pas prรฉcisรฉ la position de dรฉpart, donc l'extracLa section de la sous-chaรฎne a commencรฉ ร la position 1. Quatre caractรจres ont รฉtรฉ extraits.tracted pour renvoyer le rรฉsultat ci-dessus.
L'exemple suivant montre comment spรฉcifier la position de dรฉpart :
SELECT substring('Guru99' from 1 for 4);
La commande renverra ce qui suit :
Nous avons prรฉcisรฉ que l'extracLa partie de la sous-chaรฎne doit commencer ร la position 1 et 4 caractรจres doivent รชtre extracTed.
Extract 99 de la chaรฎne Guru99:
SELECT substring('Guru99' from 5);
La commande renverra ce qui suit :
Nous avons spรฉcifiรฉ la position de dรฉpart comme รฉtant 5. รtant donnรฉ le nombre de caractรจres ร exprimertracted n'a pas รฉtรฉ prรฉcisรฉ, l'extraction s'est propagรฉe jusqu'au bout de la chaรฎne.
Voici un autre exemple:
SELECT substring('Guru99' from 5 for 2);
La commande renverra ce qui suit :
Nous avons commencรฉ extraction ร la position 5, et 2 caractรจres รฉtaient extracTed.
Considรฉrez le tableau Livre ci-dessous :
Nous voulons avoir une idรฉe approximative du titre de chaque livre. Nous pouvons extracne conservez que les 15 premiers caractรจres de la colonne nom du tableau :
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
La commande renverra ce qui suit :
Nous avons maintenant une idรฉe gรฉnรฉrale du nom de chaque livre.
Faire correspondre des sous-chaรฎnes avec une expression rรฉguliรจre SQL
In PostgreSQL, vous pouvez extracLa fonction `substring` rรฉcupรจre une sous-chaรฎne correspondant ร une expression rรฉguliรจre POSIX spรฉcifiรฉe. Dans ce cas, elle utilise la syntaxe suivante :
SUBSTRING(string FROM matching_pattern)
or
SUBSTRING(string, matching_pattern);
Voici une explication des paramรจtres ci-dessus. La chaรฎne est la chaรฎne source, dont Type de donnรฉes Il peut s'agir de varchar, char, string, etc. Le paramรจtre matching_pattern correspond au modรจle utilisรฉ pour la recherche dans la chaรฎne.
Exemples
SELECT SUBSTRING ( 'Your age is 22', '([0-9]{1,2})' ) as age;
La commande renverra ce qui suit :
Notre chaรฎne d'entrรฉe est ยซ Votre รขge est de 22 ans ยป. Dans le modรจle, nous recherchons un motif numรฉrique ; lorsqu'il est trouvรฉ, la fonction de sous-chaรฎneโฆtracIl n'y a que deux caractรจres.
Comment extraire des sous-chaรฎnes de caractรจres avec pgAdmin
Voyons maintenant comment ces actions sont rรฉalisรฉes avec pgAdmin. Les requรชtes ne nรฉcessitant pas de base de donnรฉes peuvent รชtre exรฉcutรฉes directement depuis l'รฉditeur de requรชtes. Il suffit de procรฉder comme suit :
รtape 1) Connectez-vous ร votre compte pgAdmin.
รtape 2) Dans pgAdmin, cliquez sur l'icรดne Outil de requรชte.
La fenรชtre de l'รฉditeur de requรชtes s'ouvrira.
รtape 3) Saisissez la requรชte suivante dans la fenรชtre de l'รฉditeur.
SELECT substring('Guru99' for 4);
รtape 4) Cliquez sur l'icรดne Exรฉcuter pour exรฉcuter la requรชte.
รtape 5) L'exรฉcution de la requรชte est terminรฉe. Elle devrait renvoyer le rรฉsultat suivant :
Exemple 2:
SELECT substring('Guru99' from 1 for 4);
Il devrait renvoyer ce qui suit :
Voici l'exemple suivant :
SELECT substring('Guru99' from 5);
Il devrait renvoyer ce qui suit :
Exemple 3:
SELECT substring('Guru99' from 5 for 2);
Il devrait renvoyer ce qui suit :
Maintenant, exรฉcutons l'exemple en utilisant la table Book de la base de donnรฉes Demo :
รtape 1) Connectez-vous ร votre compte pgAdmin.
รtape 2) Dans la barre de navigation ร gauche, cliquez sur Bases de donnรฉes, puis sur Dรฉmo.
รtape 3) Tapez la requรชte dans l'รฉditeur de requรชtes :
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
รtape 4) Cliquez sur le bouton Exรฉcuter.
Il devrait renvoyer ce qui suit :
Nous avons maintenant une idรฉe de base du nom de chaque livre.
Faire correspondre des sous-chaรฎnes avec une expression rรฉguliรจre SQL
Pour accomplir la mรชme chose sur pgAdmin, procรฉdez comme suit :
รtape 1) Connectez-vous ร votre compte pgAdmin.
รtape 2) Cliquez sur l'icรดne de l'รฉditeur de requรชtes.
La fenรชtre de l'รฉditeur de requรชtes s'ouvrira.
รtape 3) Saisissez la requรชte suivante dans la fenรชtre de l'รฉditeur.
SELECT SUBSTRING ( 'Your age is 22', '([0-9]{1,2})' ) as age;
รtape 4) Cliquez sur l'icรดne Exรฉcuter pour exรฉcuter la requรชte.
Il devrait renvoyer ce qui suit :
Tรฉlรฉchargez la base de donnรฉes utilisรฉe dans ce tutoriel



















