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 Dua za Mitume na Manabii 👉2 Kitau cha Fiqh 👉3 Madrasa kiganjani 👉4 Bongolite - Game zone - Play free game 👉5 Tafasiri ya Riyadh Swalihina 👉6 kitabu cha Simulizi
Post zinazofanana:
SQL - MySQL somo la 10: Kupangilia muonekano wa data wakati wa kuzisoma kwenyed database
Katika somo hili utakwenda kujifunza jinsi ya kusoma data kutoka kwenye database katika mitindo mbalimbali kama kutoka kubwa kwenda ndogo, ama ndogo kwenda kubwa na mingineyo.
Soma Zaidi...Database somo la 25: Utangulizi wa Database ya sqlite
Katika somo hili utakwend akujifunza kuhusu aina nyingine ya database inayoitwa sqlite. Hii haihitaji server, na ni faili moja tu.
Soma Zaidi...SQL somo la 19: Stored Procedure katika MySQL na Tofauti na Function
Somo hili ni muendelezo wa pale tulipoishia katika somo lililopita, hapa tutakwenda kusoma Stored Procedure katika MySQL na Tofauti na Function
Soma Zaidi...SQL - MySQL somo la 1: Jinsi ya kutumia database
Katika somo hili utakwenda kujifunza jinsi ya kuandaa kompyuta ama simu yako kwa ajili ya mafunzo ya database
Soma Zaidi...SQL - MySQL somo la 11: Kudhibiti muonekano wa usomaji wa data kwenye database.
Katika somo hili utakwenda kujifunza jinsi ya kupangilia muonekano wa data kutoka kwenye database, kwa kudhibiti mpangilio wake.
Soma Zaidi...SQL - MySQL somo la 3: Jinsi ya kutengeneza database
Katika somo hili utakwenda kujifunza jinsi ya kutengeneza database kwenye mysql kwa kutumia interface ya mysql na kwa kutumia sql langauge
Soma Zaidi...