Tämä opetusohjelma näyttää, kuinka voit yhdistää taulukon itseesi ja luoda räätälöityjä tietoja MySQL-itseliitoksen avulla.
Peruskäyttö
MySQL-itseliitos käyttää taulukon aliaksia varmistaaksesi, että et toista samaa taulukkoa useammin kuin kerran yhdessä lausekkeessa.
HUOMAUTUS: Jos et tunne taulukon aliaksia, harkitse toista opetusohjelmaamme, joka selittää käsitteen täysin.
Yleinen syntaksi itseliitoksen käyttämiselle on samanlainen kuin kahden taulukon yhdistämisessä. Käytämme kuitenkin taulukon aliaksia. Harkitse alla esitettyä kyselyä:
VALITSE alias1.cols,alias2.cols ALK tbl1 alias1,tbl2 alias2 MISSÄ [kunto]
Esimerkkejä käyttötapauksista
Käytämme esimerkkejä ymmärtääksemme, miten MySQL -itseliitännät suoritetaan. Oletetaan, että sinulla on tietokanta, jossa on seuraavat tiedot (katso koko kysely alla)
PUDOTA SCHEMA JOS OLEMASSA itse;LUODA SCHEMA itse;
KÄYTTÄÄ itse;
LUODA PÖYTÄ käyttäjille(
id INT PÄÄAVAIN AUTO_INCREMENT ,
etunimi VARCHAR (255),
sähköposti VARCHAR (255),
payment_id INT ,
tilaus INT
);
INSERT INTO käyttäjille(etunimi,sähköposti,payment_id,tilaus) ARVOT ('Valerie G.Phillip', '[email protected]', 10001, 1), ('Sean R. tarinat', '[email protected]', 10005, 2), ('Bobby S. Newsome', '[email protected]', 100010, 5);
Aloitamme SISÄISELLÄ liittymisellä ja lopulta vasemmalla liittymisellä.
Liity itse käyttämällä sisäistä liittymistä
Alla oleva kysely suorittaa INNER -liitännän yllä luodussa taulukossa.
VALITSE al1.* ALK käyttäjät al1 SISÄINEN LIITTYÄ SEURAAN käyttäjät al2 PÄÄLLÄ al1.tilaus=al2.tilaus TILAA id DESC ;Lähtö näkyy alla:
Itse liittyminen käyttämällä vasenta liittymää
Alla olevassa esimerkkikyselyssä selitetään, kuinka voimme käyttää itseliittymistä vasemman liitoksen kanssa.
VALITSE ( CONCAT (al1.etunimi, '->',al2.sähköposti)) KUTEN yksityiskohdat,al1.payment_id ALK käyttäjät al1 VASEN LIITTYÄ SEURAAN käyttäjät al2 PÄÄLLÄ al1.id=al2.id;Tulos on alla:
Johtopäätös
Tässä oppaassa käytiin läpi, kuinka voit käyttää MySQL -itseliittymää liittyäksesi taulukkoon itsesi kanssa.
Kiitos, että luit.