..


Sponzorirani linkovi

Koristite UNION spojiti rezultati dviju tablica

Članak je napisao Max Bossi

SQL jezika nam pruža prilično jednostavan način za kombiniranje, u istom SELECT, rezultati dvaju različitih tablica.

Da bi to postigao, to je vrijeme za korištenje UNIJE all'opertore koja će, u stvari, jedinstvo rezultata upite dvije tablice.

Imajte na umu da, kako bi se koristiti ispravno, to je vrijeme da Unija operater:

  • da su tablice upita na isti broj stupaca;
  • traži da stupci imaju isto ime;
  • da potrebne stupce u dvije tablice imaju dosljedan vrste podataka;
Uzmimo primjer: recimo da za rad na bazi podataka hipotetski putničke agencije i pretpostaviti da su naši DB sadrži samo dvije tablice:
  • hotel_italia
    • ime
    • zvijezde
    • grad
    • nacija
  • hotel_europa
    • ime
    • zvijezde
    • grad
    • nacija
Sada pretpostavimo da kupac želi znati ili ponude hotela u Italiji i Europi:





 SELECT ime, zvijezde, grad, država







 IZ hotel_italia







 UNION







 SELECT ime, zvijezde, grad, država







 IZ hotel_europa



Uz ovaj upit smo dobili kompletan popis svih hotela u dvije tablice:

ime zvijezde grad nacija
Hotel Cavour 4 Rim EN
Hotel Miramare 2 Katolički EN
Hotel Manzoni 2 Milano EN
Hotel Espana 3 Madrid ES
Hilton 5 London Velika Britanija
Hotel am Schlossgarten 4 Stuttgart DE

Napomena: Imajte na umu da Unija operater ne pokazuju nikakve duplicirane zapise (po defaultu radi kao da je SELECT DISTINCT ), a ako želite bilo kakve duple zapise također pokazuju (mislim natrag na našem primjeru, u hotelu u ovom kako u tablici u koji hotel_italia hotel_europa) će morati koristiti UNION ALL.

Sortiranje i ograničiti rezultate koji proizlaze iz UNIJE

Pretpostavimo da su rezultati iz uporabe Unije i mnogi žele da budu ograničeni na određeni broj. Kako? Evo rješenja:

 



 SELECT * FROM







 (SELECT ime, zvijezde, grad, zemlju iz hotel_italia







 UNION







 SELECT ime, zvijezde, grad, zemlju iz hotel_europa)







 AS Hotel







 ORDER BY DESC LIMIT 10 zvjezdica

 
U biti, mi liječiti rezultate koji proizlaze iz sindikata od dvije ili više tablica kao da su rezultat jedne tablice, na taj način možemo koristiti za sortiranje i normalne granice.

U istoj kategoriji ...
E-učenje
MS Access (tečaj) MS Access (tečaj)
Saznajte kako stvoriti i upravljati bazama podataka jednostavno i brzo. Počevši od 29 €.
MySQL (tečaj) MySQL (tečaj)
Upravljanje open-source baza podataka. Počevši od 39 €.
SQL i baze podataka (tečaj) SQL i baze podataka (tečaj)
Stvaranje i upravljanje relacijskim bazama podataka. Počevši od 39 €.
Sponzorirani linkovi