详解如何在Oracle中连接输出结果
但是也可能遇到需要下面这样的结果。department enamepurchasing raphely,khoo,baida,tobias,himuro,colmenaresit hunol
一个偶然的机会,看到ASK TOM上的一个问题(?p=100:11:0::::P11_QUESTION_ID:229614022562),是关于查询结果字符串连接的。下图是对一个视图(视图代码附后,全部操作是在Oracle 10g中的HR schema中完成的)进行查询得到的常见的结果。
department enamemarketing hartstein
marketing fay
purchasing raphaely
purchasing khoo
...
it hunold
it ernst
...
但是也可能遇到需要下面这样的结果。
department enamepurchasing raphely,khoo,baida,tobias,himuro,colmenares
it hunold,ernst,austin,pataballa,lorentz
marketing hartstein,fay
CREATEORREPLACEVIEWd_employeeAS
SELECTd.department_name department,
e.last_name ename
FROMdepartments d,
employees e
WHEREd.department_id = e.department_idAND
d.department_nameIN('IT','Marketing','Purchasing');
为此,Tom大师提供了两种解决方案,如下:
方法一:
使用静态的SQL从表中选出需要进行连接的所有数据。
CREATEORREPLACEFUNCTIONCONCAT(P_DEPINVARCHAR2)RETURNVARCHAR2IS
L_STRVARCHAR2(200)DEFAULTNULL;
L_SEPVARCHAR2(200)DEFAULTNULL;
BEGIN
FORRCIN(SELECTENAMEFROMD_EMPLOYEEWHEREDEPARTMENT = P_DEP)LOOP
L_STR := L_STR || L_SEP || RC.ENAME;
L_SEP :=',';
ENDLOOP;
RETURNL_STR;
END;
使用下列查询语句查询:
SELECTd.department, hr.concat(d.department) employeesFROMd_employee d
GROUPBYdepartment;
方法二:
使用动态SQL,传入关键列(需求中的department)和那一列的一个值,以及需要实际进行连接的列(需求中的ename)以及表。
CREATEORREPLACEFUNCTIONCONCAT2(P_KEY_NAME INVARCHAR2,
P_KEY_VAL INVARCHAR2,
P_OTHER_COL_NAMEINVARCHAR2,
P_TNAME INVARCHAR2)
RETURNVARCHAR2AS
TYPERCISREFCURSOR;
L_STRVARCHAR2(4000);
L_SEPVARCHAR2(200);
L_VALVARCHAR2(4000);
L_CUR RC;
BEGIN
OPENL_CURFOR'select '|| P_OTHER_COL_NAME ||' from '|| P_TNAME ||' where '|| P_KEY_NAME ||' = :x '
USINGP_KEY_VAL;
LOOP
FETCHL_CUR
INTOL_VAL;
EXITWHENL_CUR%NOTFOUND;
L_STR := L_STR || L_SEP || L_VAL;
L_SEP :=',';
ENDLOOP;
CLOSEL_CUR;
RETURNL_STR;
END;
使用下列查询语句查询:
SELECTd.department, concat2('department', d.department,'ename','d_employee')FROMd_employee d
GROUPBYd.department;
Tom大师还提到,,如果你已经确切知道了需要连接显示的字段所包含的值的列表(比如,只包含A、T、L三个值),那么建议使用DECOD()方法。可以查看下面这个链接:?p=100:11:::::P11_QUESTION_ID:124812348063

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Méthode d'importation de données: 1. Utilisez l'utilitaire SqlLoader: Préparez les fichiers de données, créez des fichiers de contrôle et exécutez SqlLoader; 2. Utilisez l'outil IMP / EXP: les données d'exportation, les données d'importation. Astuce: 1. Chargeur SQL * recommandé pour les ensembles de Big Data; 2. La table cible doit exister et la définition de la colonne correspond; 3. Après l'importation, l'intégrité des données doit être vérifiée.

Pour interroger la taille de l'espace de table Oracle, suivez les étapes suivantes: Déterminez le nom de l'espace de table en exécutant la requête: sélectionnez Tablespace_name dans dba_tablespaces; Requête la taille de l'espace de table en exécutant la requête: sélectionnez SUM (Bytes) comme total_size, sum (bytes_free) comme disponible_space, sum (bytes) - sum (bytes_free) comme used_space à partir de dba_data_files où tablespace_

La création d'une table Oracle implique les étapes suivantes: Utilisez la syntaxe de la table Create pour spécifier les noms de table, les noms de colonne, les types de données, les contraintes et les valeurs par défaut. Le nom du tableau doit être concis et descriptif et ne doit pas dépasser 30 caractères. Le nom de la colonne doit être descriptif et le type de données spécifie le type de données stocké dans la colonne. La contrainte non nulle garantit que les valeurs nulles ne sont pas autorisées dans la colonne, et la clause par défaut spécifie les valeurs par défaut pour la colonne. Contraintes de clé primaire pour identifier l'enregistrement unique du tableau. La contrainte de clé étrangère spécifie que la colonne du tableau fait référence à la clé primaire dans un autre tableau. Voir la création des élèves de la table de l'échantillon, qui contient des clés primaires, des contraintes uniques et des valeurs par défaut.

Oracle Bragled Les problèmes peuvent être résolus en vérifiant le jeu de caractères de la base de données pour s'assurer qu'ils correspondent aux données. Définissez le jeu de caractères client pour correspondre à la base de données. Convertir les données ou modifier les jeux de caractères de colonne pour faire correspondre les jeux de caractères de base de données. Utilisez des jeux de caractères Unicode et évitez les jeux de caractères mulabyte. Vérifiez que les paramètres de langue de la base de données et du client sont corrects.

Les solutions à Oracle ne peuvent pas être ouvertes comprennent: 1. Démarrer le service de base de données; 2. Commencez l'auditeur; 3. Vérifiez les conflits portuaires; 4. Définir correctement les variables d'environnement; 5. Assurez-vous que le pare-feu ou le logiciel antivirus ne bloque pas la connexion; 6. Vérifiez si le serveur est fermé; 7. Utilisez RMAN pour récupérer les fichiers corrompus; 8. Vérifiez si le nom du service TNS est correct; 9. Vérifier la connexion réseau; 10. Réinstaller le logiciel Oracle.

Il existe trois façons d'afficher les noms d'instance dans Oracle: utilisez le "SQLPlus" et "SELECT INSTRESS_NAME FROM V $ INSTERNE;" Commandes sur la ligne de commande. Utilisez "Show instance_name;" Commande dans SQL * Plus. Vérifiez les variables d'environnement (Oracle_sid sur Linux) via le gestionnaire de tâches du système d'exploitation, Oracle Enterprise Manager ou via le système d'exploitation.

Pour créer un utilisateur dans Oracle, suivez ces étapes: créez un nouvel utilisateur à l'aide de l'instruction Créer des utilisateurs. Accorder les autorisations nécessaires en utilisant la déclaration de subvention. Facultatif: utilisez l'instruction RESSOURCE pour définir le quota. Configurez d'autres options telles que les rôles par défaut et les espaces de table temporaires.

Oracle View Encryption vous permet de crypter les données dans la vue, améliorant ainsi la sécurité des informations sensibles. Les étapes incluent: 1) la création de la clé de cryptage maître (MEK); 2) Création d'une vue cryptée, spécifiant la vue et MEK à crypter; 3) Autoriser les utilisateurs à accéder à la vue cryptée. Comment fonctionnent les vues cryptées: lorsqu'un utilisateur interroge pour une vue cryptée, Oracle utilise MEK pour décrypter les données, garantissant que seuls les utilisateurs autorisés peuvent accéder aux données lisibles.
