Kompjuters, Programmazzjoni
Id-dikjarazzjoni SQL UNNER JOIN: eżempji, sintassi u karatteristiċi
L-iżvilupp ta 'kwalunkwe database jimplika mhux biss il-ħolqien u l-mili ta' tabelli b'varjetà ta 'informazzjoni, iżda wkoll aktar ħidma mad-dejta. Għall-eżekuzzjoni korretta tad-diversi kompiti għall-għażla ta 'data minn tabelli u rapporti li jiġġeneraw, tintuża l-kostruzzjoni standard Select.
L-informazzjoni tinkiseb mit-tabelli
Jekk tqis il-kompitu li tagħżel id-data jew tibni ċertu rapport, tista 'tiddetermina l-livell ta' kumplessità ta 'din l-operazzjoni. Bħala regola, meta taħdem ma 'databases serji (fuq il-volum ta' informazzjoni), li huma ffurmati, pereżempju, f'ħwienet online jew f'kumpaniji kbar, it-teħid ta 'kampjuni tad-dejta mhux se jkun limitat għal tabella waħda biss. Tipikament, il-kampjuni jistgħu jkunu minn numru pjuttost kbir ta 'tabelli interkonnessi mhux biss, iżda wkoll il-mistoqsijiet / sottokategoriji nestjati li jagħmel il-programmatur innifsu, skont il-kompitu assenjat lilu. Għat-teħid ta 'kampjuni minn tabella waħda, tista' tuża d-disinn sempliċi:
| Agħżel * minn Persuna |
Fejn il-Persuna hija l-isem tat-tabella minn fejn tista 'tagħżel id-data.
Jekk hemm bżonn li tagħżel id-dejta minn diversi tabelli, tista 'tuża wieħed mid-disinji standard biex tikkombina diversi tabelli.
Modi kif tgħaqqad tabelli addizzjonali
Jekk inqisu l-użu ta 'dawn l-istrutturi fil-livell inizjali, allura nistgħu niddistingwu l-mekkaniżmi li ġejjin għall-konnessjoni tan-numru meħtieġ ta' tabelli għall-kampjun, jiġifieri:
- Operatur Inner Join.
- Xellug Ingħaqad jew, dan huwa t-tieni mod ta 'reġistrazzjoni, Left Outer Join.
- Cross Join.
- Ingħaqad sħiħ.
L-użu ta 'tabelli ta' operaturi jingħaqdu fil-prattika jista 'jitgħallem billi jiġi kkunsidrat l-użu tal-operatur SQL - Inner Join. Eżempju ta 'l-użu tiegħu se jkun bħal dan:
Agħżel * minn Persuna Inner jgħaqqad Subdiviżjoni fuq Su_Person = Pe_ID |
Il-lingwa SQL u l-operatur Join Inner Join jistgħu jintużaw mhux biss biex jingħaqdu ma 'żewġ tabelli jew aktar, iżda wkoll biex jgħaqqdu subqueries oħra, li jiffaċilita ħafna l-ħidma ta' amministraturi ta 'database u, bħala regola, jistgħu jħaffu b'mod sinifikanti l-eżekuzzjoni ta' ċerti mistoqsijiet strutturati.
Tgħaqqad id-dejta fit-tabelli ringiela b'ringiela
Jekk tqis li tikkonnettja għadd kbir ta 'subqueries u ġabra tad-data f'ringiela waħda ta' tabella b'ringiela, tista 'wkoll tuża l-operaturi kollha tal-Unjoni u tal-Unjoni.
L-applikazzjoni ta 'dawn id-disinji tiddependi fuq il-kompitu stabbilit qabel l-iżviluppatur u r-riżultat li jrid jikseb fl-aħħar.
Deskrizzjoni tal-operatur Inner Join
F'ħafna każijiet, tuża l-operatur Inner Join biex tingħaqad ma 'tabelli multipli f'SQL. Id-deskrizzjoni ta 'Inner Join in SQL hija pjuttost sempliċi biex tifhem il-programmatur medju, li għadu qed jibda jifhem id-databases. Jekk inqisu d-deskrizzjoni tal-mekkaniżmu ta 'tħaddim ta' din il-kostruzzjoni, nagħmlu l-istampa li ġejja. Il-loġika ta 'l-operatur kollu kemm hu hija bbażata fuq il-possibbiltà li jaqsmu u jittieħdu kampjuni biss dik id-data li teżisti f'kull tabella li hija inkluża fil-mistoqsija.
Jekk nikkunsidraw dan ix-xogħol mill-perspettiva tal-interpretazzjoni grafika, nagħmlu l-istruttura ta 'SQL Inner Join, eżempju ta' liema tista 'tintwera bl-għajnuna tal-iskema li ġejja:
Per eżempju, għandna żewġ tabelli, li d-dijagramma tagħhom hija murija fil-figura. Huma, min-naħa tagħhom, għandhom numru differenti ta 'rekords. F'kull tabella hemm oqsma li huma marbuta flimkien. Jekk tipprova tispjega x-xogħol ta 'l-operatur ibbażat fuq iċ-ċifra, ir-riżultat irritornat ikun fil-forma ta' sett ta 'rekords minn żewġ tabelli, fejn in-numri ta' oqsma relatati jikkoinċidu. Fi kliem sempliċi, il-mistoqsija se tirritorna biss dawk ir-rekords (minn tabella numru tnejn), li d-data tagħhom tinsab fit-tabella numru wieħed.
Sintaxxa ta 'Inner Join operatur
Kif issemma qabel, l-operatur Inner Join, jiġifieri s-sintassi tiegħu, huwa estremament sempliċi. Biex torganizza rabtiet bejn tabelli f'kampjun wieħed, ikun biżżejjed li tiftakar u tuża l-iskema prinċipali li ġejja għall-kostruzzjoni ta 'operatur, li hija miktuba f'linja waħda tal-kodiċi SQL tal-programm, jiġifieri:
- Inner Join [isem tabella] fuq [qasam ewlieni mit-tabella li aħna qabbad] = [Il-qasam ewlieni tat-tabella mqabbda].
Għall-komunikazzjoni f'dan l-operatur, jintużaw iċ-ċwievet prinċipali tat-tabelli. Bħala regola, fil-grupp ta 'tabelli li jaħżnu informazzjoni dwar impjegati, il-Persuna u s-Subdiviżjoni deskritti qabel għandhom mill-inqas rekord simili wieħed. Allura, ejja tagħti ħarsa aktar mill-qrib lejn id-dikjarazzjoni SQL Inner Join, li eżempju tagħha intwera ftit qabel.
Eżempju u deskrizzjoni ta 'konnessjoni ma' għażla ta 'tabella waħda
Għandna tabella Persuna li taħżen informazzjoni dwar l-impjegati kollha li jaħdmu fil-kumpanija. Ninnotaw li ċ-ċavetta prinċipali ta 'din it-tabella hija l-qasam - Pe_ID. Biss fuqha u se jkun hemm mazz.
It-tieni tabella Subdiviżjoni se taħżen informazzjoni dwar id-dipartimenti li fihom jaħdmu l-impjegati. Min-naħa tagħha, huwa assoċjat bl-għajnuna tal-qasam ta 'Su_Person mat-tabella tal-Persuna. Xi jfisser dan? Ibbażat fuq l-iskeda tad-dejta, tista 'tgħid li fit-tabella tal-unità għal kull daħla fit-tabella tal-Impjegati se jkun hemm informazzjoni dwar id-dipartiment li fih jaħdmu. Huwa għal din ir-rabta li l-operatur Inner Join ser jaħdem.
Għal użu aktar tinftiehem, tikkunsidra l-operatur SQL Inner Join (eżempji ta 'l-użu tiegħu għal tabella waħda u tnejn). Jekk nikkunsidraw eżempju għal tabella waħda, allura kollox huwa pjuttost sempliċi:
Agħżel * minn Persuna Inner jgħaqqad Subdiviżjoni fuq Su_Person = Pe_ID |
Eżempju ta 'konnessjoni ta' żewġ tabelli u subkategorija
L-operatur ta 'Inner Join ta' SQL, li jista 'jintuża biex tagħżel dejta minn diversi tabelli bil-mod imsemmi hawn fuq, jaħdem fuq prinċipju kemmxejn iktar ikkumplikat. Għal żewġ tabelli, aħna nikkomplikaw il-problema. Per eżempju, għandna tabella ta 'Tluq, li taħżen informazzjoni dwar id-dipartimenti kollha f'kull dipartiment. F'din it-tabella, in-numru tad-dipartiment u n-numru tal-impjegat huma rreġistrati u għandek bżonn tissupplimenta l-kampjun tad-dejta bl-isem ta 'kull dipartiment. B'ħarsa 'l quddiem, ta' min isemmi li żewġ metodi jistgħu jintużaw biex issolvi din il-problema.
L-ewwel mod huwa li tgħaqqad it-tabella tad-dipartiment mal-kampjun. F'dan il-każ, tista 'torganizza l-mistoqsija b'dan il-mod:
Agħżel Pe_ID, Pe_Name, Su_Id, Su_Name, Dep_ID, Dep_Name minn Person Inner jgħaqqad Subdiviżjoni fuq Su_Person = Pe_ID Inner jgħaqqdu Tluq fuq Su_Depart = Dep_ID u Pe_Depart = Dep_ID |
It-tieni metodu biex tissolva l-problema huwa l-użu ta 'subkategorija li fiha d-data kollha, iżda biss dawk meħtieġa, se jintgħażlu mit-tabella tad-dipartiment. Dan, b'kuntrast mal-ewwel metodu, inaqqas iż-żmien tal-mistoqsija.
Agħżel Pe_ID, Pe_Name, Su_Id, Su_Name, Dep_ID, Dep_Name minn Person Inner jgħaqqad Subdiviżjoni fuq Su_Person = Pe_ID Inner join (Agħżel Dep_ID, Dep_Name, Pe_Depart minn Depart) bħala T fuq Su_Depart = Dep_ID u Pe_Depart = Dep_ID |
Ta 'min jinnota li dan id-disinn mhux dejjem iħaffef il-mistoqsija. Xi drabi hemm każijiet fejn huwa meħtieġ li tintuża kampjunatura addizzjonali ta 'data fit-tabella temporanja (jekk il-volum tagħhom huwa kbir wisq), u mbagħad huwa kkombinat mal-kampjun ewlieni.
Eżempju tal-użu tal-operatur Inner Join għal selezzjonijiet minn numru kbir ta 'tabelli
Il-bini ta 'mistoqsijiet kumplessi jinvolvi l-użu ta' numru sinifikanti ta 'tabelli u subkategoriji relatati ma' xulxin biex tinġabar data. Dawn ir-rekwiżiti jistgħu jissodisfaw is-sintassi tal-Inner Join ta 'SQL. Eżempji ta 'l-użu ta' l-operatur f'dan il-każ jistgħu jkunu kkumplikati mhux biss minn kampjuni minn ħafna postijiet ta 'ħażna ta' data, iżda wkoll minn numru kbir ta 'subqueries imqabbda. Għal eżempju speċifiku, tista 'tieħu kampjun ta' dejta minn tabelli tas-sistema (l-operatur Inner Join SQL). Eżempju - 3 tabelli - f'dan il-każ se jkollu struttura pjuttost kumplessa.
F'dan il-każ, jiżdiedu tlieta oħra (għat-tabella ewlenija) u jiddaħħlu diversi kundizzjonijiet għall-għażla tad-dejta.
Meta tuża l-operatur Inner Join, ftakar li iktar ma tkun kumplessa l-mistoqsija, aktar tkun implimentata, u għalhekk ikun tajjeb li tfittex modi biex twettaq u ssolvi l-kompitu aktar malajr.
Konklużjoni
Fl-aħħar, nixtieq ngħid ħaġa waħda: il-ħidma mad-databases mhijiex l-aktar ħaġa diffiċli li hi fl-ipprogrammar, hekk jekk tixtieq assolutament kulħadd jista 'jegħleb l-għarfien ta' databases ta 'bini, u eventwalment, jikseb esperjenza, inti tkun kapaċi taħdem magħhom fuq livell professjonali .
Similar articles
Trending Now