Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Sort_merge_join
Sort_merge_join
Sort merge join - Teknopedia
Vai al contenuto
Menu principale
Navigazione
  • Pagina principale
  • Ultime modifiche
  • Una voce a caso
  • Nelle vicinanze
  • Vetrina
  • Aiuto
  • Sportello informazioni
  • Pagine speciali
Comunità
  • Portale Comunità
  • Bar
  • Il Teknopediano
  • Contatti
Teknopedia L'enciclopedia libera
Ricerca
  • Fai una donazione
  • registrati
  • entra
  • Fai una donazione
  • registrati
  • entra

Indice

  • Inizio
  • 1 Pseudo-codice dell'algoritmo
  • 2 Utilizzi
  • 3 Bibliografia

Sort merge join

  • English
  • Русский
Modifica collegamenti
  • Voce
  • Discussione
  • Leggi
  • Modifica
  • Modifica wikitesto
  • Cronologia
Strumenti
Azioni
  • Leggi
  • Modifica
  • Modifica wikitesto
  • Cronologia
Generale
  • Puntano qui
  • Modifiche correlate
  • Link permanente
  • Informazioni pagina
  • Cita questa voce
  • Ottieni URL breve
  • Scarica codice QR
Stampa/esporta
  • Crea un libro
  • Scarica come PDF
  • Versione stampabile
In altri progetti
  • Elemento Wikidata
Aspetto
Da Teknopedia, l'enciclopedia libera.

Nella teoria delle basi di dati, l'algoritmo sort merge join (o anche solo merge join) si distingue dagli altri algoritmi di join perché prima di effettuare i confronti ordina (sort) le relazioni secondo l'attributo di join. Una volta ordinate le unisce (merge). Appena viene trovata una corrispondenza tra tuple provenienti da relazioni diverse, essa viene messa nel result set di output.

Pseudo-codice dell'algoritmo

[modifica | modifica wikitesto]

Una possibile implementazione dell'algoritmo è la seguente:

// input: F(A,...), G(B,...)
// output: F ⋈ G on F.A = G.B
// fase di ordinamento
ordina F su F.A
ordina G su G.B  
// fase di merge
f = prima tupla di F
g = prima tupla di G
// RF indica la fine di una relazione
while f != RF && g != RF do 

    if f.A > g.B
        g = tupla successiva a g in G

    else if f.A < g.B
        f = tupla successiva a f in F

    else
        inserisci nella relazione in output f oppure g
 
        f' = tupla successiva a f in F
        while f' != RF && f'.A = g.B do
            inserisci nella relazione in output f' oppure g
            f' = tupla successiva a f' in F
        od 
      
        g' = tupla successiva a g in G
        while g' != RF && g'.B = f.A do
            inserisci nella relazione in output f oppure g'
            g' = tupla successiva a g' in G
        od

        f = tupla successiva a f in F
        g = tupla successiva a g in G

    fi

od

Utilizzi

[modifica | modifica wikitesto]

Dato che l'ordinamento iniziale può essere un'operazione molto costosa, specialmente se il volume di dati coinvolti è alto, è preferibile utilizzare altri algoritmi quando ci si trova in questa condizione. Al contrario, se i dati sono già ordinati o è necessario ordinarli comunque (ad esempio è presente la clausola order by) o la clausola di join si basa su un'ineguaglianza, è preferibile usare questo tipo di algoritmo.

Bibliografia

[modifica | modifica wikitesto]
  • Sort Merge Joins in the MySQL 5.6 Reference Manual.
  • https://www.dcs.ed.ac.uk/
  Portale Informatica
  Portale Ingegneria
Estratto da "https://it.wikipedia.org/w/index.php?title=Sort_merge_join&oldid=145302472"
Categorie:
  • Terminologia informatica
  • Teoria delle basi di dati
  • Ingegneria del software
  • Questa pagina è stata modificata per l'ultima volta l'11 giu 2025 alle 00:46.
  • Il testo è disponibile secondo la licenza Creative Commons Attribuzione-Condividi allo stesso modo; possono applicarsi condizioni ulteriori. Vedi le condizioni d'uso per i dettagli.
  • Informativa sulla privacy
  • Informazioni su Teknopedia
  • Avvertenze
  • Contatti legali e di sicurezza
  • Codice di condotta
  • Sviluppatori
  • Statistiche
  • Dichiarazione sui cookie
  • Versione mobile
  • Wikimedia Foundation
  • Powered by MediaWiki
Sort merge join
Aggiungi argomento

  • Indonesia
  • English
  • Français
  • 日本語
  • Deutsch
  • Italiano
  • Español
  • Русский
  • فارسی
  • Polski
  • 中文
  • Nederlands
  • Português
  • العربية
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022