


Méthode d'optimisation de la méthode de connexion aux tables Oracle (avec exemples)
Ce que cet article vous apporte concerne la méthode d'optimisation de la connexion aux tables Oracle (avec des exemples). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.
Dans la base de données Oracle, il existe quatre méthodes de connexion de table entre deux tables : jointure par fusion de tri, jointure par boucle imbriquée, jointure par hachage et jointure cartésienne
1. 🎜>
La jointure par fusion de tri est une méthode de connexion de table qui utilise l'opération de tri (SORT) et l'opération de fusion (MERGE) pour obtenir l'ensemble de résultats de connexion lorsque deux tables sont connectées Si la table t1 et la. La table t2 utilise une connexion de tri-fusion lors de l'établissement de connexions de table, Oracle effectuera les étapes suivantes dans l'ordre : a. Accédez à la table t1 avec la condition de prédicat spécifiée dans le SQL cible, puis accédez aux résultats. trié en fonction de la colonne de connexion de la table t1, et l'ensemble de résultats triés est enregistré comme s1b. Accédez à la table t2 en fonction des conditions de prédicat spécifiées dans le SQL cible, puis triez les résultats d'accès en fonction. à la colonne de connexion de la table t2, l'ensemble de résultats triés est enregistré comme s2c Effectuez une opération de fusion sur s1 et s2 et supprimez les enregistrements correspondants comme ensemble de résultats finalLes avantages, les inconvénients et l'application de la connexion par fusion de tri Scénario :
a. Habituellement, l'effet de la jointure par hachage est meilleur que la jointure par fusion de tri. Cependant, si la source de la ligne a été triée, il n'est pas nécessaire de trier. à nouveau lors de l'exécution de la jointure par fusion de tri. Dans ce cas, la jointure par fusion de tri sera meilleure que celle de la jointure par hachage
b Normalement, la jointure par fusion de tri ne sera utilisée que lorsque les situations suivantes se produisent :
<.>1) Mode RBO 2) Jointure de valeurs inégales (>,<,>=,<=)3) Lorsque la jointure par hachage est désactivée (_HASH_JOIN_ENABLED=false) Exemple
2. Jointure de boucles imbriquées (jointure de boucles imbriquées)
SQL> select * from scott.emp t1,scott.emp t2 where t1.empno > t2.mgr; 89 rows selected. Execution Plan ---------------------------------------------------------- Plan hash value: 3950110903 ---------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ---------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 62 | 4712 | 6 (17)| 00:00:01 | | 1 | MERGE JOIN | | 62 | 4712 | 6 (17)| 00:00:01 | | 2 | SORT JOIN | | 14 | 532 | 2 (0)| 00:00:01 | | 3 | TABLE ACCESS BY INDEX ROWID| EMP | 14 | 532 | 2 (0)| 00:00:01 | | 4 | INDEX FULL SCAN | PK_EMP | 14 | | 1 (0)| 00:00:01 | |* 5 | SORT JOIN | | 14 | 532 | 4 (25)| 00:00:01 | | 6 | TABLE ACCESS FULL | EMP | 14 | 532 | 3 (0)| 00:00:01 | ---------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 5 - access(INTERNAL_FUNCTION("T1"."EMPNO")>INTERNAL_FUNCTION("T2"."MGR")) filter(INTERNAL_FUNCTION("T1"."EMPNO")>INTERNAL_FUNCTION("T2"."MGR")) Statistics ---------------------------------------------------------- 1 recursive calls 0 db block gets 8 consistent gets 0 physical reads 0 redo size 6612 bytes sent via SQL*Net to client 575 bytes received via SQL*Net from client 7 SQL*Net roundtrips to/from client 2 sorts (memory) 0 sorts (disk) 89 rows processed SQL>
Exemple
3. Hash join
SQL> select /*+ gather_plan_statistics use_nl(t1,t2)*/* from scott.emp t1,scott.dept t2 where t1.deptno = t2.deptno; SQL> select * from table(dbms_xplan.display_cursor(null,0,'allstats,last')); PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- SQL_ID dcsf9m1rzzga5, child number 0 ------------------------------------- select /*+ gather_plan_statistics use_nl(t1,t2)*/* from scott.emp t1,scott.dept t2 where t1.deptno = t2.deptno Plan hash value: 4192419542 ------------------------------------------------------------------------------------- | Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | ------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | | 14 |00:00:00.01 | 32 | | 1 | NESTED LOOPS | | 1 | 14 | 14 |00:00:00.01 | 32 | | 2 | TABLE ACCESS FULL| DEPT | 1 | 4 | 4 |00:00:00.01 | 7 | |* 3 | TABLE ACCESS FULL| EMP | 4 | 4 | 14 |00:00:00.01 | 25 | ------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- - filter("T1"."DEPTNO"="T2"."DEPTNO") rows selected. SQL>
La jointure par hachage est. très approprié pour joindre de petites tables et de grandes tables, en particulier lorsque la sélectivité de la colonne de jointure d'une petite table est très bonne, alors le temps d'exécution de la jointure par hachage peut être approximativement considéré comme équivalent au temps passé sur une analyse complète de la table de la grande table
Problèmes de performances de connexion de hachage Il peut être diagnostiqué via l'événement 10104. Les instructions pertinentes sont les suivantes : buckets : buckets non vides : la situation des enregistrements vides et des enregistrements non vides dans le bucket de hachage
Nombre total. de lignes : le nombre d'enregistrements dans l'ensemble de résultats de pilotageNombre maximum de lignes dans un bucket : le bucket de hachage contenant le plus grand nombre d'enregistrements Contient le nombre d'enregistrements
Filtrage bitmap désactivé : s'il faut activer le filtrage bitmapExemple
[Recommandations associées :
Tutoriel SQL
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!

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)

Cette fois, le jeton Redstone $ Red sera lancé sur Binance LaunchPool sur Binance TGE! C'est également la première fois que Binance lance un mécanisme de limite de trading avant le marché! La limite du premier jour est de 200%, et l'interdiction sera levée après 3 jours pour éviter que "le pic sera atteint lorsque le marché s'ouvrira"! Launchpool Mécanisme présente le BinancelAunchpool participant à Redstone qui doit engager la période d'activité des jetons désignés (BNB, USDC, FDUSD) est de 48 heures: 08:00 UTC le 26 février 2025 à 08:00 UTC le 28 février 2025 terminant cette règle de limite quotidienne avant le marché: 18:00 le 28 février, 2025

Pour renforcer la sécurité de la base de données Oracle sur le système Debian, il faut de nombreux aspects pour commencer. Les étapes suivantes fournissent un cadre pour la configuration sécurisée: 1. Installation de la base de données Oracle et préparation du système de configuration initiale: Assurez-vous que le système Debian a été mis à jour vers la dernière version, la configuration du réseau est correcte et tous les packages logiciels requis sont installés. Il est recommandé de se référer à des documents officiels ou à des ressources tierces fiables pour l'installation. Utilisateurs et groupes: Créez un groupe d'utilisateurs Oracle dédié (tel que Oinstall, DBA, BackupDBA) et définissez-le pour lui. 2. Restrictions de sécurité Définir les restrictions de ressources: Edit /etc/security/limits.d/30-oracle.conf

Dois-je installer un client Oracle lors de la connexion à une base de données Oracle à l'aide de Go? Lorsque vous développez GO, la connexion aux bases de données Oracle est une exigence commune ...

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.

L'activité aérienne de Redstone (Red) bat son plein, attirant de nombreux investisseurs à participer. Redstone est un Oracle de données transversales avancées, avec un réseau de validateurs solides, des capacités d'intégration des données en temps réel et des mécanismes d'incitation communautaire, et a été soutenu par de nombreux établissements d'investissement bien connus. Ses avantages technologiques uniques le distinguent sur le marché Oracle hautement compétitif et présente un énorme potentiel pour le développement futur. Cet article effectuera une analyse approfondie du projet Redstone, explorera le nombre de jetons rouges disponibles pour participer à AirDrops et faire une perspective sur le prix des jetons rouges, aidant les investisseurs à mieux comprendre et évaluer le projet Redstone et les risques d'investissement. Surtout pour les détenteurs de BNB, la participation à Airdrops aura la possibilité d'obtenir des jetons rouges et d'enrichir le groupe d'actifs numériques

Lors de la sélection du logiciel ERP, clarifiez d'abord les besoins de l'entreprise, y compris l'industrie, l'échelle, le budget et l'infrastructure informatique, puis sélectionnez le système qui répond aux besoins en fonction du processus commercial principal. Les systèmes ERP courants comprennent: SAP convient aux grandes entreprises, avec des fonctions puissantes mais des fonctions coûteuses; Oracle a des fonctions complètes mais est coûteuse, adaptée aux grandes entreprises; Odoo convient aux petites et moyennes entreprises, à faible coût et personnalisables; Le SAAS ERP est déployé dans le cloud, payant à la demande et adapté aux entreprises en développement rapide. Avant de choisir, vous devez effectuer un essai, consulter des conseils professionnels et faire attention aux services après-vente pour choisir le système ERP qui vous convient le mieux.

Vous voulez naviguer dans le monde des cryptomonnaies ? À lire absolument ce guide de 60 pages sur les termes de l'industrie ! Ce guide couvre tout, des concepts de base tels que les crypto-monnaies, les blockchains et les pièces stables, aux termes commerciaux tels que long, short et effet de levier, en passant par les termes techniques tels que les nœuds, les contrats intelligents et DeFi. Une solide compréhension de ces termes vous fournira une base solide pour des conversations et des décisions d’investissement en toute confiance dans la communauté des cryptomonnaies.

La pièce SUPRA est un actif inter-chaînes conçu pour améliorer l’écosystème DeFi. Il est développé par l'équipe SupraOracles, spécialisée dans les services Oracle blockchain. SUPRA Coin peut être utilisé sur plusieurs réseaux blockchain, notamment Ethereum, Binance Smart Chain, Polygon, Avalanche et Fantom, favorisant ainsi l'interopérabilité entre les chaînes. Il a de multiples utilisations dans l’écosystème DeFi, notamment les services Oracle, la gouvernance, le jalonnement, le paiement des frais et les transactions inter-chaînes.
