SQL somo la 20: Jinsi ya kuunganisha table kwneye database
Katika somo hili utakwend akujifunz akuunganisha table zaidi ya moja kwneye database.
Kujiunga kwa Jedwali (Joining Tables) katika Database
1. Maana ya Kujiunga kwa Jedwali (Join Tables)
Kujiunga kwa jedwali ni mchakato wa kuunganisha data kutoka kwenye jedwali (table) mbili au zaidi kwa kutumia uhusiano uliopo kati ya kolamu zao. Mara nyingi tunajiunga kwa jedwali ili kuchota taarifa ambazo zinahusiana lakini zimetunzwa kwenye jedwali tofauti.
2. Kwa Nini Tunajiunga kwa Jedwali?
-
Kuepuka data rudufu: Huwezi kuhifadhi data zote kwenye jedwali moja kwani itasababisha data kurudiwa mara nyingi.
-
Uhifadhi wa uhusiano: Data zinazohusiana, kama vile bidhaa na wateja walioweka oda, zitatunzwa kwa njia inayoweka uhusiano wazi.
-
Kuongeza ufanisi: Kupata taarifa sahihi kutoka kwenye chanzo kimoja kilicho na uhusiano ni rahisi zaidi na hupunguza makosa.
3. Faida za Kujiunga kwa Jedwali
-
Kuboresha muundo wa database kwa kutenganisha data kulingana na aina yake.
-
Kutoa mwonekano bora wa data zinazohusiana.
-
Kusaidia katika uchambuzi wa data na kutoa ripoti sahihi.
4. Aina za Kujiunga kwa Jedwali
-
INNER JOIN: Huchukua rekodi zinazolingana pekee kutoka kwenye jedwali zote.
-
LEFT JOIN (LEFT OUTER JOIN): Huchukua rekodi zote kutoka jedwali la kushoto hata kama hakuna mechi kwenye jedwali la kulia.
-
RIGHT JOIN (RIGHT OUTER JOIN): Huchukua rekodi zote kutoka jedwali la kulia hata kama hakuna mechi kwenye jedwali la kushoto.
-
FULL OUTER JOIN: Huchukua rekodi zote, hata kama hazina mechi kwenye jedwali lingine.
#NB: Katika sql tunatumia alama ya dot ( . ) ili ku refer table ama database husika. Mfano kama table ni duka na ina field kama id, na name , halafu tuna table nyingine bidhaa ina field kama id na name, sasa nikitaka kutumia name kutoka kwenye table duka nitasema duka.name na kama ni name kutoka kwneye table ya bidhaa nitasema bidhaa.name. Hivyo mtindo huu tutakwenda kuutumia zaidi kwneye mifano. Pia katika kuunganisha table tunatumia keyword JOIN ON
Mfano wa Jedwali la Bidhaa, Wateja, na Duka
Katika somo hili tutakwenda kuunganisha table 3 ili kuweza kufanyia mazoezi namna za kuunganisha table. Table ya duka hii itatunza taarifa za maduka yetu. Chukulia kuwa mtu anawez akuwa na maduka zaidi ya moja, na kila duka likawa na bidhaa ambazo huwenda zisipatikane katika duka lingine.
Table ya pili ni bidhaa, hii itatunza taarifa za bidhaa kama jina la bidhaa pamoja na kuonyesha duka ambalo lina bidhaa iyo. Tutafanya hivi kw akuweka id ya duka hilo.Table ya tatu itatunza taarifa za wateja. Hapa unaweza kuongeza kioengele cha bidhaa walizonunua. Fanya hivi kwa mazoezi zaidi.
5. Muundo wa Jedwali
-- Jedwali: duka
CREATE TABLE duka (
duka_id INT PRIMARY KEY,
jina_duka VARCHAR(50) NOT NULL,
eneo VARCHAR(50) NOT NULL
);
-- Jedwali: bidhaa
CREATE TABLE bidhaa (
bidhaa_id INT PRIMARY KEY,
jina_bidhaa VARCHAR(50) NOT NULL,
bei DECIMAL(10, 2) NOT NULL,
duka_id INT,
FOREIGN KEY (duka_id) REFERENCES duka(duka_id)
);
-- Jedwali: wateja
CREATE TABLE wateja (
mteja_id INT PRIMARY KEY,
jina_mteja VARCHAR(50) NOT NULL,
simu VARCHAR(15) NOT NULL
);
Sasa kopi code zifuatazo ili kuweka data kwneye table hizo tatu tulizozitengeneza.
INSERT INTO duka (duka_id, jina_duka, eneo) VALUES
(101, 'Duka la Simu', 'Dar es Salaam'),
(102, 'Duka la Kompyuta', 'Arusha'),
(103, 'Duka la Friji', 'Dodoma'),
(104, 'Duka la TV', 'Mwanza'),
(105, 'Duka la Saa', 'Mbeya');
INSERT INTO bidhaa (bidhaa_id, jina_bidhaa, bei, duka_id) VALUES
(1, 'Simu Samsung', 150000.00, 101),
(2, 'Kompyuta Dell', 250000.00, 102),
(3,...
Umeionaje Makala hii.. ?
Share On:
👉1 Bongolite - Game zone - Play free game 👉2 kitabu cha Simulizi 👉3 Kitabu cha Afya 👉4 Simulizi za Hadithi Audio 👉5 Kitau cha Fiqh 👉6 ai web app
Post zinazofanana:
SQL - MySQL somo la 2: Maana ya database na ina za database na kazi zake
Katika somo hili utakwenda kujifunza aina mbalimbali za database, lugha ya sql pamoja kuzijuwa kazi zake
Soma Zaidi...Database somo la 26: Baadhi ya function za SQL ambayo hutumika kubadili data
Function hizi ni muhimu katika kubadili data kabla ya kuzionyesha. Hii ni muhimu ili kupata structure maalum ya data.
Soma Zaidi...SQL -MySQL somo la 5: Aina za data zinazotumika kwenye Mysql Database
Katika somo hili utakwenda kujifunza aina mbalimbali za data zinazotumika kwenye mysql database
Soma Zaidi...SQL - MySQL somo la 8: Jinsi ya kuweka data (taarifa) kwenye database
Katika somo hili utajifunza jinsi ya kuweka data kwenye database, ku edit pamoja na kufuta kwa kutumia SQL na Myql interface
Soma Zaidi...SQL somo la 18: Jinsi ya kutengeneza function kwenye mysql database
Wakati mwingne utahitaji kuwa na function ili kurahisisha uchakataji wa data nyingi bila ya kurudia rudia kuandika code.
Soma Zaidi...SQL somo la 15: Jinsi ya kutumia sql function kwenye mysql
Katika somo hili utakwenda kujifunza baadhi ya function kwenye sql na jinsi ya kuzitumia.
Soma Zaidi...