KompyutaProgramu

SQL INNER JOIN statement: mifano, syntax na vipengele

Maendeleo ya database yoyote yanamaanisha tu uumbaji na kujaza meza na habari mbalimbali, lakini pia kazi zaidi na data. Kwa utekelezaji sahihi wa majukumu mbalimbali kwa kuchagua data kutoka kwa meza na ripoti za kuzalisha, muundo wa kawaida wa Chagua hutumiwa.

Data inachukua kutoka kwa meza

Ikiwa unazingatia kazi ya kuchagua data au kujenga ripoti fulani, unaweza kuamua kiwango cha utata wa operesheni hii. Kama sheria, wakati wa kufanya kazi kwa taarifa za kina (juu ya kiasi cha habari), ambazo zinaundwa, kwa mfano, katika maduka ya mtandaoni au makampuni makubwa, sampuli ya data haitapunguzwa kwa meza moja tu. Kwa kawaida, sampuli zinaweza kuwa kutoka kwa idadi kubwa ya meza zisizounganishwa tu, lakini pia maswali yaliyotokana na maandishi ambayo programu hiyo yenyewe hufanya, kulingana na kazi iliyopewa. Kwa sampuli kutoka kwenye meza moja, unaweza kutumia muundo rahisi zaidi:

Chagua * kutoka kwa Mtu

Ambapo Mtu ni jina la meza ambayo huchagua data.

Ikiwa kuna haja ya kuchagua data kutoka meza kadhaa, unaweza kutumia moja ya miundo ya kawaida ili kuchanganya meza kadhaa.

Njia za kuunganisha meza za ziada

Ikiwa tunazingatia matumizi ya miundo kama hiyo katika ngazi ya awali, basi tunaweza kutofautisha njia zifuatazo za kuunganisha meza muhimu ya sampuli, yaani:

  1. Ingia Jumuiya ya Kuendesha.
  2. Kushoto Kujiunga au, hii ndiyo njia ya pili ya kurekodi, Kushoto kwa Nje Kushiriki.
  3. Msalaba Jiunge.
  4. Kujiunga Kamili.

Matumizi ya meza ya waendeshaji wa kujiunga katika mazoezi yanaweza kujifunza kwa kuzingatia matumizi ya SQL operator - Jumuiya ya ndani. Mfano wa matumizi yake utaonekana kama hii:

Chagua * kutoka kwa Mtu

Ugawanyiko wa ndani wa Su_Person = Pe_ID

Lugha ya SQL na Wajumbe wa Kujiunga na Wajumbe wa Kujiunga inaweza kutumika sio tu kujiunga na meza mbili au zaidi, lakini pia kuunganisha safu zingine, ambazo zinawezesha sana kazi za watendaji wa database na, kama sheria, zinaweza kuharakisha utekelezaji wa maswali fulani ya muundo.

Kuchanganya data katika safu ya meza kwa mstari

Ikiwa unafikiria kuunganisha idadi kubwa ya vichwa vya habari na kukusanya data kwenye mstari mmoja wa meza kwa mstari, unaweza pia kutumia Wafanyakazi wa Umoja na Umoja.

Matumizi ya miundo hii itategemea kazi iliyowekwa kabla ya msanidi programu na matokeo ambayo anataka kufikia mwishoni.

Ufafanuzi wa Msajili wa Ndani

Mara nyingi, unatumia operator wa Kujiunga wa Ndani ili kujiunga na meza nyingi katika SQL. Maelezo ya kujiunga na ndani katika SQL ni rahisi sana kwa programu ya kawaida ya kuelewa, ambayo inaanza tu kuelewa database. Ikiwa tunazingatia maelezo ya utaratibu wa uendeshaji wa ujenzi huu, tunapata picha ifuatayo. Nakala ya operator kwa ujumla inategemea uwezekano wa kuingiliana na kusambaza data hizo pekee ambazo zipo katika kila meza zinazojumuishwa katika swala.

Ikiwa tunazingatia kazi hii kutoka kwa mtazamo wa ufafanuzi wa kielelezo, tunapata muundo wa SQL Inner Join, mfano wa ambayo inaweza kuonyeshwa kwa msaada wa mpango wafuatayo:

Kwa mfano, tuna meza mbili, mchoro ambao unaonyeshwa kwenye takwimu. Wao, kwa upande wake, wana idadi tofauti ya rekodi. Katika kila meza kuna mashamba ambayo yanaunganishwa pamoja. Ikiwa unajaribu kuelezea kazi ya operesheni kulingana na takwimu, matokeo yaliyorejeshwa yatakuwa kwenye mfumo wa seti ya kumbukumbu kutoka kwa meza mbili, ambapo idadi ya maeneo yanayohusiana yanapatikana. Kuweka tu, swala litarudi rekodi hizo tu (kutoka kwenye namba ya mbili), data ambayo iko katika nambari ya meza moja.

Syntax ya operator wa ndani wa kujiunga

Kama ilivyoelezwa hapo awali, operator wa ndani wa Kujiunga, yaani syntax yake, ni rahisi sana. Kuandaa viungo kati ya meza ndani ya sampuli moja, itakuwa ya kutosha kukumbuka na kutumia mpango mkuu wafuatayo kwa ajili ya kujenga operator, ambayo imeandikwa katika mstari mmoja wa programu ya SQL-code, yaani:

  • Kujiunga ndani [jina la meza] juu ya [shamba muhimu kutoka kwenye meza tunayounganisha] = [Shamba muhimu ya meza iliyounganishwa].

Kwa mawasiliano katika operator hii, funguo kuu za meza hutumiwa. Kama kanuni, katika kikundi cha meza ambazo zinahifadhi habari kuhusu wafanyakazi, Mtu aliyejulikana hapo awali na Mgawanyiko wana rekodi moja sawa. Kwa hiyo, hebu tuchunguze kwa karibu Samoli ya Kujiunga ya ndani ya SQL, mfano ambao ulionyeshwa mapema kidogo.

Mfano na maelezo ya uunganisho kwenye uteuzi wa meza moja

Tuna meza ya Mtu inayoweka habari kuhusu wafanyakazi wote wanaofanya kazi katika kampuni hiyo. Tazama tu kwamba ufunguo kuu wa meza hii ni uwanja - Pe_ID. Tu juu yake na kutakuwa na kundi.

Mgawanyiko wa meza ya pili utahifadhi habari kuhusu idara ambazo wafanyakazi hufanya kazi. Kwa hiyo, inahusishwa na msaada wa uwanja wa Su_Person na meza ya Mtu. Hii inamaanisha nini? Kulingana na schema ya data, unaweza kusema kuwa katika meza ya kitengo kwa kila kuingia katika meza ya Waajiri kutakuwa na habari kuhusu idara ambayo wanafanya kazi. Ni kwa ajili ya uhusiano huu ambao mtendaji wa Kujiunga wa Ndani atafanya kazi.

Kwa matumizi ya kueleweka zaidi, fikiria operator wa SQL wa Kujiunga Ndani (mifano ya matumizi yake kwa meza moja na mbili). Ikiwa tunazingatia mfano kwa meza moja, basi kila kitu ni rahisi sana:

Chagua * kutoka kwa Mtu

Ugawanyiko wa ndani wa Su_Person = Pe_ID

Mfano wa kuunganisha meza mbili na subquery

Mpangilio wa ndani wa SQL wa Kujiunga, ambayo inaweza kutumika kuchagua data kutoka meza kadhaa kwa njia ya hapo juu, hufanya kazi kwa kanuni ngumu zaidi. Kwa meza mbili, tunavuta tatizo. Kwa mfano, tuna meza ya Kuondoka, inayohifadhi maelezo kuhusu idara zote katika kila idara. Katika meza hii, nambari ya idara na idadi ya wafanyakazi ni kumbukumbu na unahitaji kuongeza sampuli ya data na jina la kila idara. Kuangalia mbele, ni muhimu kutaja kuwa njia mbili zinaweza kutumiwa kutatua tatizo hili.

Njia ya kwanza ni kuunganisha meza ya idara kwa sampuli. Katika kesi hii, unaweza kuandaa swala kwa njia hii:

Chagua Pe_ID, Pe_Name, Su_Id, Su_Name, Dep_ID, Dep_Name kutoka kwa Mtu

Ugawanyiko wa ndani wa Su_Person = Pe_ID

Uunganisho wa ndani Nenda kwenye Su_Depart = Dep_ID na Pe_Depart = Dep_ID

Njia ya pili ya kutatua tatizo ni kutumia sura ambayo si data yote, lakini tu muhimu, itachaguliwa kutoka meza ya idara. Hii, kinyume na njia ya kwanza, itapunguza muda wa swala.

Chagua Pe_ID, Pe_Name, Su_Id, Su_Name, Dep_ID, Dep_Name kutoka kwa Mtu

Ugawanyiko wa ndani wa Su_Person = Pe_ID

Uunganisho wa ndani (Chagua Dep_ID, Dep_Name, Pe_Depart kutoka Kwenda) kama T juu ya Su_Depart = Dep_ID na Pe_Depart = Dep_ID

Inapaswa kutambua kwamba kubuni hii haiwezi kuharakisha swala daima. Wakati mwingine kuna matukio wakati ni muhimu kutumia sampuli ya ziada ya data katika meza ya muda (ikiwa kiasi chake ni kubwa mno), na kisha ni pamoja na sampuli kuu.

Mfano wa kutumia operator wa ndani wa Kujiunga kwa uchaguzi kutoka kwa idadi kubwa ya meza

Kujenga maswali magumu kunahusisha kutumia idadi kubwa ya meza na vichwa vinavyolingana kuhusiana na data ili kupata data. Mahitaji haya yanaweza kukidhi syntax ya Kujiunga ya Ndani ya SQL. Mifano ya matumizi ya operator katika kesi hii inaweza kuwa ngumu si tu kwa sampuli kutoka maeneo mengi ya hifadhi ya data, lakini pia kutoka kwa idadi kubwa ya vituo vya maiti. Kwa mfano maalum, unaweza kuchukua sampuli ya data kutoka kwa meza za mfumo (wajumbe wa ndani wa SQL Jiunge). Mfano - meza 3 - katika kesi hii itakuwa na muundo tata sana.

Katika kesi hii, zaidi ya tatu huongezwa (kwa meza kuu) na hali kadhaa za uteuzi wa data zimeingia.

Unapotumia Mshirika wa Ndani wa Kujiunga, kumbuka kuwa swala linalo ngumu zaidi, litatekelezwa tena, kwa hiyo ni muhimu kuangalia njia za kufanya haraka na kutatua kazi.

Hitimisho

Mwishoni, ningependa kusema kitu kimoja: kufanya kazi na taarifa sio jambo ngumu sana katika programu, hivyo kama unataka kabisa kila mtu anaweza ujuzi wa databasti za kujenga, na hatimaye, kupata uzoefu, utaweza kufanya kazi nao kwenye ngazi ya kitaaluma .

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 sw.delachieve.com. Theme powered by WordPress.