Amakhompyutha, Izinhlelo
Kwesokunxele ujoyine (SQL) - isibonelo, incazelo eningiliziwe, ukusetshenziswa iphutha
Kunoma semininingwane yangempela zingubudlelwane lonke ulwazi isakazwa etafuleni ahlukene. Abaningi amatafula ezibekwe kule scheme zokuxhumana nomunye. Nokho, ngosizo imibuzo ye-SQL kungenzeka ukubeka isixhumanisi phakathi idatha, hhayi linamathele wesifunda. Lokhu kwenziwa ngokwenza ujoyine uxhumano, okuyinto ikuvumela ukwakha ubuhlobo phakathi noma iyiphi inombolo amathebula, ngisho ukuxhuma okubonakala disparate.
Lesi sihloko sizosisiza ukukhuluma ngokuqondile ngale yangaphandle kwesokunxele ujoyine. Ngaphambi kokuqhubeka incazelo lolu hlobo lwe-Inthanethi, engeza kwezinye amatafula database.
Ukulungisa amatafula ezidingekayo
Ngokwesibonelo, ngo-database yethu, kukhona ulwazi mayelana nabantu estate sabo sangempela. Isifinyezo esekelwe amatafula amathathu: Abantu (abantu), Realty (ingcebo), Realty_peoples (ubudlelwano etafuleni, abantu kulokho impahla kungokwalabo). Lokucabanga idatha elandelayo elondolozwe ku amatafula abantu:
abantu | ||||
i-id | L_name | F_name | Middle_name | usuku lokuzalwa oluhle |
1 | Ivanova | Daria | B. | 07/16/2000 |
2 | Pugin | Vladislav | Nikolaevich | 29.01.1986 |
3 | Evgenin | Alexander | Federovich | 04/30/1964 |
4 | Annina | uthando | P. | 31.12.1989 |
5 | Gerasimovsky | ngethemba | P. | 14.03.1992 |
6 | Gerasimovsky | Oleg | Albertovich | 01/29/1985 |
7 | Sukhanovskaya | amajaji | A. | 09/25/1976 |
8 | Sukhanovskaya | Julia | Y. | 01.10.2001 |
yemizi:
Realty | |
i-id | ikheli |
1 | Arkhangelsk, ul. Voronin, d. 7 kv.6 |
2 | Arkhangelsk, ul. Severodvinskaya, d. 84, q. 9 BR. 5 |
3 | Arkhangelsk esifundeni, Severodvinsk, st. Lenin, d. 134, q. 85 |
4 | Arkhangelsk esifundeni, Novodvinsk, ul. Proletarshaya, d. 16, q. 137 |
5 | Arkhangelsk, pl. Terekhina, d. 89, q. 13 |
Ubudlelwano abantu - impahla:
Realty_peoples | ||
id_peoples | id_realty | uhlobo |
7 | 3 | Ubunikazi obuphelele ngokuhlanganyela |
8 | 3 | Ubunikazi obuphelele ngokuhlanganyela |
3 | 5 | impahla |
7 | 1 | impahla |
5 | 4 | izingxenye Evamile |
6 | 4 | izingxenye Evamile |
Kwesobunxele ujoyine (SQL) - Incazelo
kwakwakhe Kwesobunxele has syntax ezilandelayo:
Table_A KWESOKUNXELE JOYINA table_B [{KU isilandiso} | {UKUSEBENZISA spisok_ nge tolbtsov}] |
Futhi schematically kanje:
Futhi le nkulumo ihunyushwe ngokuthi "Khetha konke, ngaphandle kokukhetha, ulayini Ithebula A no Ithebula B ukubonisa kuphela imigqa lelihambisana isilandiso. Uma etafuleni itholwe etafuleni uchungechunge ngazimbili A, bese ugcwalisa amakholomu okuholela Null - amagugu ".
Ngokuvamile, lapho uxhumano kwesokunxele kuboniswa ON, usebenzisa isetshenziswa kuphela uma amagama ikholomu, ehlelelwe umhla ukwenza kube nokuhlobana ziyafana.
Kwesokunxele ujoyine - izibonelo yokusetshenziswa
Nge uxhumano kwesokunxele singabona, bonke abantu ohlwini uma kukhona Abantu impahla. Ukwenza lokhu kwesokunxele ujoyine SQL nombuzo isibonelo:
Abantu KHETHA. *, Realty_peoples.id_realty, Realty_peoples.type KUSUKELA Abantu KWESOKUNXELE JOYINA Realty_peoples KU Peoples.id = Realty_peoples.id_peoples; |
Nge imiphumela elandelayo:
Query1 | ||||||
i-id | L_name | F_name | Middle_name | usuku lokuzalwa oluhle | id_realty | uhlobo |
1 | Ivanova | Daria | B. | 07/16/2000 | ||
2 | Pugin | Vladislav | Nikolaevich | 29.01.1986 | ||
3 | Evgenin | Alexander | Federovich | 04/30/1964 | 5 | impahla |
4 | Annina | uthando | P. | 31.12.1989 | ||
5 | Gerasimovsky | ngethemba | P. | 14.03.1992 | 4 | izingxenye Evamile |
6 | Gerasimovsky | Oleg | Albertovich | 01/29/1985 | 4 | izingxenye Evamile |
7 | Sukhanovskaya | amajaji | A. | 09/25/1976 | 1 | impahla |
7 | Sukhanovskaya | amajaji | A. | 09/25/1976 | 3 | Ubunikazi obuphelele ngokuhlanganyela |
8 | Sukhanovskaya | Julia | Y. | 01.10.2001 | 3 | Ubunikazi obuphelele ngokuhlanganyela |
Njengoba sibona, Ivanova Darya Pugin Vladislav futhi Anninoy Lyubovi Ayikho bhalisiwe amalungelo ingcebo.
Futhi lokho bekungaba sesamukele, usebenzisa i kwangaphakathi ujoyine Inner ujoyine? Njengoba wazi, ke akufaki imigqa non-ezifanayo, ngakho ezintathu kuzo isampula sethu sokugcina bekuzokuba ahoxiswe:
Query1 | ||||||
i-id | L_name | F_name | Middle_name | usuku lokuzalwa oluhle | id_realty | uhlobo |
3 | Evgenin | Alexander | Federovich | 04/30/1964 | 5 | impahla |
5 | Gerasimovsky | ngethemba | P. | 14.03.1992 | 4 | izingxenye Evamile |
6 | Gerasimovsky | Oleg | Albertovich | 01/29/1985 | 4 | izingxenye Evamile |
7 | Sukhanovskaya | amajaji | A. | 09/25/1976 | 1 | impahla |
7 | Sukhanovskaya | amajaji | A. | 09/25/1976 | 3 | Ubunikazi obuphelele ngokuhlanganyela |
8 | Sukhanovskaya | Julia | Y. | 01.10.2001 | 3 | Ubunikazi obuphelele ngokuhlanganyela |
Kunengqondo ukuphetha ngokuthi version yesibili futhi ihlangabezana nemibandela inkinga yethu. Nokho, uma siqala unamathisele kwenye, futhi kwelinye itafula, abantu abathathu abavela umphumela kakade irretrievably gone. Ngakho-ke, empeleni uma ngokuhlanganisa amatafula amaningi kakhulu kaningi lisetshenziswe sencele nesekudla uxhumano kuka Inner ujoyine.
Izoqhubeka bheka kwesokunxele ujoyine izibonelo SQL. Namathisela itafula nge amakheli ezindlini zethu:
Abantu KHETHA. *, Realty_peoples.id_realty, Realty_peoples.type, Realty.address KUSUKELA Abantu KWESOKUNXELE JOYINA Realty_peoples KU Peoples.id = Realty_peoples.id_peoples KWESOKUNXELE JOYINA Realty KU Realty.id = Realty_peoples.id_realty |
Manje sithola hhayi kuphela uhlobo umthetho, kodwa futhi ikheli ingcebo:
Query1 | |||||||
i-id | L_name | F_name | Middle_name | usuku lokuzalwa oluhle | id_realty | uhlobo | ikheli |
1 | Ivanova | Daria | B. | 07/16/2000 | |||
2 | Pugin | Vladislav | Nikolaevich | 29.01.1986 | |||
3 | Evgenin | Alexander | Federovich | 04/30/1964 | 5 | impahla | Arkhangelsk, pl. Terekhina, d. 89, q. 13 |
4 | Annina | uthando | P. | 31.12.1989 | |||
5 | Gerasimovsky | ngethemba | P. | 14.03.1992 | 4 | izingxenye Evamile | Arkhangelsk esifundeni, Novodvinsk, ul. Proletarshaya, d. 16, q. 137 |
6 | Gerasimovsky | Oleg | Albertovich | 01/29/1985 | 4 | izingxenye Evamile | Arkhangelsk esifundeni, Novodvinsk, ul. Proletarshaya, d. 16, q. 137 |
7 | Sukhanovskaya | amajaji | A. | 09/25/1976 | 3 | Ubunikazi obuphelele ngokuhlanganyela | Arkhangelsk esifundeni, Severodvinsk, st. Lenin, d. 134, q. 85 |
7 | Sukhanovskaya | amajaji | A. | 09/25/1976 | 1 | impahla | Arkhangelsk, ul. Voronin, d. 7 kv.6 |
8 | Sukhanovskaya | Julia | Y. | 01.10.2001 | 3 | Ubunikazi obuphelele ngokuhlanganyela |
Arkhangelsk esifundeni, Severodvinsk, st. Lenin, d. 134, q. 85 |
Kwesokunxele ujoyine - ukusetshenziswa ejwayelekile yephutha: ithebula inqubo engavumelekile
amaphutha Basic esakhishwa eMihlanganweni yangaphandle kwesokunxele ujoyine amatafula, ezimbili:
- Kahle ezikhethiwe oda amathebula elahlekile okuyiwona idatha.
- Lapho amaphutha uma usebenzisa umbuzo ujoyine amatafula.
Cabanga iphutha lokuqala. Ngaphambi isinqumo zanoma iyiphi inkinga kufanele kahle ukuthi ufuna ukuthola ekugcineni lokho thina. Kulesi sibonelo esingenhla, sathatha zonke noyedwa kubantu, kodwa baphelelwa ulwazi mayelana into ngaphansi inombolo 2, umnikazi wazo ayitholakalanga.
Uma sathuthela amatafula umbuzo kwezinye izindawo, futhi uzoqala nge «... Kusukela Realty kwesokunxele ujoyine Abantu ...» iyiphi impahla eyodwa, sasingayikuhlanganyela elahlekile, ngeke uxoxe ngabantu.
Kodwa ungethuki yoxhumano ngakwesokunxele, ukushintshela ku yangaphandle egcwele, okuyinto likhona imiphumela kanye oluhambisana, hhayi emigqeni ezifanayo.
Phela, ivolumu Isampula ngokuvamile mkhulu kakhulu, futhi idatha eyengeziwe empeleni engenamsebenzi. Into esemqoka - ukuthola ukuthi ufuna ukuthola yalokho: kubo bonke abantu nge uhlu impahla yabo itholakale noma lonke uhlu impahla kanye zabanikazi (uma ikhona).
Kwesokunxele ujoyine - ukusetshenziswa ejwayelekile yephutha: Cela ilungile uma usetha izimo Kuphi
Iphutha yesibili buhlobene futhi ukulahleka kwedatha, futhi kungabonakali ngokushesha ngaso sonke isikhathi.
Ase sibuyele emuva nombuzo lapho sesihamba kulowo nge uxhumano wathola idatha ye bonke abantu kanye nempahla yabo ekhona. Khumbula okulandelayo kwesokunxele ujoyine Ngokwesibonelo SQL:
KUSUKELA Abantu KWESOKUNXELE JOYINA Realty_peoples KU Peoples.id = Realty_peoples.id_peoples; |
Ake sithi sifuna ukucacisa isicelo futhi ongenalo okukhipha idatha, lapho uhlobo umthetho - "Isakhiwo". Uma thina nje ukwengeza, usebenzisa kwesokunxele ujoyine SQL, isibonelo isimo elandelayo:
...
Lapho uhlobo <> "Isakhiwo" |
thina uzolahlekelwa idatha abantu abangenandaba impahla, ngoba null ukubaluleka Null akuyona kuqhathaniswa kanje:
Query1 | ||||||
i-id | L_name | F_name | Middle_name | usuku lokuzalwa oluhle | id_realty | uhlobo |
5 | Gerasimovsky | ngethemba | P. | 14.03.1992 | 4 | izingxenye Evamile |
6 | Gerasimovsky | Oleg | Albertovich | 01/29/1985 | 4 | izingxenye Evamile |
7 | Sukhanovskaya | amajaji | A. | 09/25/1976 | 3 | Ubunikazi obuphelele ngokuhlanganyela |
8 | Sukhanovskaya | Julia | Y. | 01.10.2001 | 3 | Ubunikazi obuphelele ngokuhlanganyela |
Ukuvimbela amaphutha kusuka ezenzeka ngenxa yalesi sizathu, kungcono ukusetha isimo Ukukhetha ngokushesha uxhumano. Siphakamisa ukuba ucabangele okulandelayo kwesokunxele ujoyine Ngokwesibonelo SQL.
Abantu KHETHA. *, Realty_peoples.id_realty, Realty_peoples.type KUSUKELA Abantu KWESOKUNXELE JOYINA Realty_peoples KU (Peoples.id = Realty_peoples.id_peoples KANYE uhlobo <> "Isakhiwo") |
Umphumela walokhu uyoba kanje:
Query1 | ||||||
i-id | L_name | F_name | Middle_name | usuku lokuzalwa oluhle | id_realty | uhlobo |
1 | Ivanova | Daria | B. | 07/16/2000 | ||
2 | Pugin | Vladislav | Nikolaevich | 29.01.1986 | ||
3 | Evgenin | Alexander | Federovich | 04/30/1964 | ||
4 | Annina | uthando | P. | 31.12.1989 | ||
5 | Gerasimovsky | ngethemba | P. | 14.03.1992 | 4 | izingxenye Evamile |
6 | Gerasimovsky | Oleg | Albertovich | 01/29/1985 | 4 | izingxenye Evamile |
7 | Sukhanovskaya | amajaji | A. | 09/25/1976 | 3 | Ubunikazi obuphelele ngokuhlanganyela |
8 | Sukhanovskaya | Julia | Y. | 01.10.2001 | 3 | Ubunikazi obuphelele ngokuhlanganyela |
Ngakho, ngokulandela elula kwesobunxele ujoyine Ngokwesibonelo SQL, sathola uhlu lwabo bonke abantu, ezihambayo okwengeziwe, enye yalezi izakhiwo i ukulingana / ubunikazi ngokuhlanganyela.
Njengoba isiphetho Ngithanda ukugcizelela waphinda ukuthi isampula yiluphi ulwazi kusuka database okudingeka zithathwe ngendlela efanele. umehluko wemisindo nemiqondo yamagama amaningi wavula phambi kwethu nge kwesokunxele ujoyine isibonelo esilula SQL, incazelo iyiphi - ngaphambi uqala ukubhala ngisho nombuzo eziyisisekelo, kumelwe ngokucophelela ukuze uqonde ukuthi ufuna ukuthola ekugcineni thina. Ngikufisela inhlahla!
Similar articles
Trending Now