recherche
Maisonbase de donnéesOracleComment intercepter certains caractères dans une chaîne dans Oracle

Dans Oracle, vous pouvez utiliser les fonctions Instr() et substr() pour intercepter une partie des caractères de la chaîne. La syntaxe est "SUBSTR('Chaîne à intercepter', position de départ de l'interception, INSTR('Chaîne à intercepter', position de départ de l'interception, INSTR('Chaîne à intercepter'). intercepté" ,'','Position de départ de la recherche','Nombre d'occurrences')-1) ".

Comment intercepter certains caractères dans une chaîne dans Oracle

L'environnement d'exploitation de ce tutoriel : système Windows 7, version Oracle 11g, ordinateur Dell G3.

oracle intercepte une partie de la chaîne dans le champ

Utilisez les fonctions Instr() et substr() dans Oracle :

Dans Oracle, vous pouvez utiliser la fonction instr pour juger une chaîne afin de déterminer si il contient les caractères spécifiés.

La syntaxe est :

instr(sourceString,destString,start,appearPosition).   
instr('源字符串' , '目标字符串' ,'开始位置','第几次出现')

  • sourceString représente la chaîne source ;

  • destString représente la sous-chaîne à trouver dans la chaîne source ;

  • start représente la position de départ de la recherche ; paramètre Facultatif, la valeur par défaut est 1 ;

  • lookingPosition représente le nombre d'occurrences de destString que vous souhaitez rechercher à partir du caractère source. Ce paramètre est également facultatif et la valeur par défaut est 1 

Si la valeur de start est. un nombre négatif, la recherche s'effectue ensuite de droite à gauche, mais les données de position sont toujours calculées de gauche à droite.

La valeur de retour est : la position de la chaîne trouvée.

Pour la fonction instr, nous l'utilisons souvent comme ceci : trouver la position de la sous-chaîne spécifiée à partir d'une chaîne. Par exemple :

SQL> select instr('yuechaotianyuechao','ao') position from dual;
 POSITION
 ----------
 6

Commencez la recherche à partir du 7ème caractère

SQL> select instr('yuechaotianyuechao','ao', 7) position from dual;
 POSITION
 ----------
 17

Commencez à partir du 1er caractère et recherchez la deuxième occurrence de la sous-chaîne

SQL> select instr('yuechaotianyuechao','ao', 1, 2) position from dual;
 POSITION
 ----------
 17

Pour la fonction instr, nous l'utilisons souvent comme ceci : Rechercher la valeur spécifiée à partir d'un string La position de la sous-chaîne. Par exemple :

SQL> select instr('abcdefgh','de') position from dual; 
POSITION 
---------- 
4

À partir de 1, d se classe quatrième, donc 4 est renvoyé

SQL>select instr('abcdefghbc','bc',3) position from dual; 
POSITION 
---------- 
9

À partir du 3ème caractère, le troisième caractère est c, donc la recherche de bc dans la chaîne à partir de 3 renvoie 9

L'utilisation de la fonction substr consiste à obtenir la chaîne avec la position de départ et la longueur spécifiées dans la chaîne. La valeur par défaut est la sous-chaîne de la position de départ à la fin.

 substr( string, start_position, [ length ] )       substr('目标字符串',开始位置,长度)

Tels que :

      substr('This is a test', 6, 2)     would return 'is' 
      substr('This is a test', 6)     would return 'is a test' 
      substr('TechOnTheNet', -3, 3)     would return 'Net' 
      substr('TechOnTheNet', -6, 3)     would return 'The'select substr('Thisisatest', -4, 2) value from dual

Fonction SUBSTR()

1 Utilisation : Renvoie une sous-chaîne à partir d'une expression de caractère ou d'un champ mémo donné.

2. Format de grammaire :

substr(string string, int a, int b);
substr(string string, int a) ; 

Format 1 :

1. chaîne La chaîne qui doit être interceptée

2. a intercepte la position de départ de la chaîne (Remarque : lorsque a est égal à 0 ou 1, elle commence à partir du premier 3. b La longueur de la chaîne à intercepter

Format 2 :

1. chaîne La chaîne à intercepter

2. a peut être compris comme interceptant tous les caractères suivants à partir du a-ème caractère chaîne.

oracle intercepte la chaîne

C3411.907w15 intercepte la chaîne C3411 avant le point SUBSTR ('C3411.907w15', 0, INSTR ('C3411.907w15, '.', 1, 1) - 1)

SELECT SUBSTR ('C3411.907w15', 0, INSTR ('C3411.907w15, '.', 1, 1) - 1)
  FROM DUAL

Tronquez la chaîne 907w15 après le point de C3411.907w15 SUBSTR ('C3411.907w15', INSTR ('C3411.907w15', '.', 1, 1)+1)

SELECT SUBSTR ('C3411.907w15', INSTR ('C3411.907w15', '.', 1, 1)+1)
  FROM DUAL

Exemples d'application de projet :

Chaîne d'origine :

Il y a 7 "_" dans le champ d'origine. Maintenant, je veux juste retirer la chaîne après le dernier "_".

Deux étapes :

La première étape consiste à trouver le 7ème caractère "_" via la fonction Instr() :

select instr('Qfang.com Group_Brokerage Division_South China District_Shenzhen Shihua_ Sales Department_Nanshan Qianhai District_Qianhai Central Area_Qianhai Fifth Branch' ,'_', 1, 7) fdisplayname de SHENZHENJM1222.B

ou :

select instr('QFang.com Group_ Brokerage Division_South China District_Shenzhen Shihua_Sales Department_Nanshan Qianhai District_Qianhai Central Area_Qianhai Fifth Branch', '_',

-1, 1) fdisplayname FROM SHENZHENJM1222.BLes deux L'effet est le même. -1 ci-dessous signifie compter le caractère de départ à partir de la droite, 1 signifie obtenir le premier "_"

Le résultat obtenu est tel qu'indiqué. dans la figure :

Étape 2, passez la fonction substr(), supprimez les champs obligatoires :

select substr(

fdisplayname

,instr(fdisplayname,'_',-1,1 )+1) fdisplayname de SHENZHENJM1222.B

fdisplayname

 : représente le nom du champ, équivalent à une métachaîneConcentrons-nous dessus

+1

+1 signifie commencer à intercepter la première chaîne après la chaîne cible "_"

Jetons un coup d'œil à la situation des différents nombres :

select substr(fdisplayname,instr(fdisplayname,'_',-1,1)+1) fdisplayname de SHENZHENJM1222.B

Jetons un coup d'œil à instr(fdisplayname,'_', -1,1) Que signifie 1 dans :

Tutoriel recommandé : "Tutoriel Oracle"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Oracle Sauvegarde et récupération: assurer l'intégrité et la disponibilité des donnéesOracle Sauvegarde et récupération: assurer l'intégrité et la disponibilité des donnéesApr 10, 2025 am 09:40 AM

L'objectif principal de la sauvegarde et de la récupération d'Oracle est de restaurer rapidement la base de données à un état cohérent lorsque les données sont perdues ou corrompues. 1. Phase de sauvegarde: Copiez le fichier de base de données sur le support de sauvegarde via RMAN ou d'autres outils. 2. Phase de récupération: lorsqu'une base de données échoue, restaurez d'abord les données de sauvegarde, puis restaurez à l'état préfilé en appliquant le fichier journal de rétablissement.

Oracle Real Application Clusters (RAC): Évolutivité et haute disponibilitéOracle Real Application Clusters (RAC): Évolutivité et haute disponibilitéApr 09, 2025 am 12:16 AM

Oraclerac réalise la haute disponibilité et l'évolutivité grâce au stockage de la base de données partagée multi-nœuds. Son principe de travail comprend l'équilibrage de la charge, le basculement et l'expansion dynamique des nœuds pour assurer un fonctionnement efficace du système et la cohérence des données.

Oracle Cloud Infrastructure (OCI): déploiement et gestion des bases de données Oracle dans le cloudOracle Cloud Infrastructure (OCI): déploiement et gestion des bases de données Oracle dans le cloudApr 08, 2025 am 12:09 AM

Le déploiement et la gestion des bases de données Oracle dans OCI peuvent être réalisés via les étapes suivantes: 1. Créez une instance de base de données et définissez des paramètres de configuration à l'aide de OCIPyTONSDK; 2. Configurer le réseau et les ressources de stockage; 3. Connectez-vous à la base de données et exécutez les requêtes SQL; 4. Effectuer des opérations de sauvegarde et de récupération de la base de données; 5. Optimiser les performances de la base de données en ajustant la configuration des ressources, l'optimisation du réseau et les stratégies de sauvegarde. Il s'agit d'un processus hautement automatisé où les utilisateurs n'ont besoin que de fournir les paramètres de configuration nécessaires et l'OCI gérera les travaux restants.

Questions d'entrevue Oracle: Crack votre entretien d'administrateur de la base de donnéesQuestions d'entrevue Oracle: Crack votre entretien d'administrateur de la base de donnéesApr 07, 2025 am 12:17 AM

La préparation des entretiens OraCledBA nécessite la maîtrise des connaissances de base telles que l'architecture de la base de données, le réglage des performances et la sauvegarde et la récupération. 1. Comprendre le schéma de base de données Oracle, y compris la relation entre les instances et les bases de données. 2. Méthodes de réglage des performances maître, telles que le réglage SQL et l'optimisation d'index. 3. Familiers avec les stratégies de sauvegarde et de récupération et utilisez des outils RMAN et de pompe de données. Grâce à ces préparatifs, vous pouvez démontrer vos compétences professionnelles dans l'entretien et réussir l'entretien.

Advanced Oracle SQL Tuning: Optimiser les performances de requête pour les expertsAdvanced Oracle SQL Tuning: Optimiser les performances de requête pour les expertsApr 06, 2025 am 12:06 AM

Oraclesql Tuning peut améliorer les performances de la requête via les étapes suivantes: 1. Créez un index approprié, comme la création d'un index pour la colonne du département; 2. Analyser le plan d'exécution, utiliser la commande ExplicationPlan pour afficher et optimiser; 3. Effectuer une réécriture SQL, comme l'utilisation de sous-questionnaires pour éviter les opérations de connexion inutiles. Grâce à ces méthodes, l'efficacité de la requête de la base de données Oracle peut être considérablement améliorée.

Sécurité de la base de données Oracle: durcissement et protection de vos donnéesSécurité de la base de données Oracle: durcissement et protection de vos donnéesApr 05, 2025 am 12:17 AM

La sécurité des bases de données Oracle peut être réalisée grâce à une variété de mesures, notamment l'authentification, l'autorisation, le chiffrement et l'audit. 1) Utiliser des fichiers de mot de passe pour l'authentification et l'autorisation des utilisateurs; 2) protéger les données sensibles par le cryptage des données transparentes (TDE); 3) Utiliser des bases de données privées virtuelles (VPD) pour obtenir un contrôle d'accès à grain fin; Ces méthodes garantissent la confidentialité, l'intégrité et la disponibilité des données.

Oracle Goldengate: réplication et intégration des données en temps réelOracle Goldengate: réplication et intégration des données en temps réelApr 04, 2025 am 12:12 AM

OracleGoldEngate permet la réplication et l'intégration des données en temps réel en capturant les journaux de transaction de la base de données source et en appliquant des modifications à la base de données cible. 1) Capturez les modifications: lisez le journal des transactions de la base de données source et convertissez-le en fichier de piste. 2) Modifications de transmission: transmission au système cible sur le réseau, et la transmission est gérée à l'aide d'un processus de pompe de données. 3) Modifications de l'application: sur le système cible, le processus de copie lit le fichier de sentiers et applique des modifications pour garantir la cohérence des données.

Oracle PL / SQL Deep Dive: Mastering Procédures, fonctions et packagesOracle PL / SQL Deep Dive: Mastering Procédures, fonctions et packagesApr 03, 2025 am 12:03 AM

Les procédures, fonctions et packages dans OraclePL / SQL sont utilisés pour effectuer des opérations, renvoyer des valeurs et organiser le code, respectivement. 1. Le processus est utilisé pour effectuer des opérations telles que la sortie des salutations. 2. La fonction est utilisée pour calculer et renvoyer une valeur, comme le calcul de la somme de deux nombres. 3. Les packages sont utilisés pour organiser des éléments pertinents et améliorer la modularité et la maintenabilité du code, telles que les packages qui gèrent l'inventaire.

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

Adaptateur de serveur SAP NetWeaver pour Eclipse

Adaptateur de serveur SAP NetWeaver pour Eclipse

Intégrez Eclipse au serveur d'applications SAP NetWeaver.