Združevanje več tabel v en rezultat s poizvedbo za združevanje

Združevanje več tabel v en rezultat s poizvedbo za združevanje

Pomembno : Besedilo članka je prevedeno strojno. Glejte zavrnitev odgovornosti. Angleško različico tega članka najdete tukaj .

Recimo, da v Accessovo zbirko podatkov ima dve nepovezane tabele-eno, ki hrani podatke o stranki in drugo ki hrani podatke o dobavitelji- in obeh tabel imeti polje podatki za stik. Bi radi videli kontaktne informacije iz obeh tabel v enem pogledu. Najprej ustvarite poizvedbo za izbiranje za vsako tabelo za pridobivanje podatkov za stik in nato združite te rezultate tako, da ustvarite poizvedbo za združevanje.

Opomba : Vsebina v tem članku je namenjen za uporabo s Accessove namizne zbirke podatkov. Ni mogoče ustvariti ali uporabite poizvedbo za združevanje dostop do spletnih zbirkah podatkov ali v programih Access web app.

Želite namige za ustvarjanje osnovnih poizvedb za izbiranje? Glejte Ustvarjanje preproste poizvedbe za izbiranje.

Začnimo z osnovami ustvarjanja poizvedbe za združevanje:

  • Poizvedbe za izbiranje, ki jih združite v poizvedbi za združevanje, morajo imeti enako število izhodnih polj, biti v istem vrstnem redu in z enako ali združljivo vrsto podatkov. Ko zaženete poizvedbo za združevanje, se podatki iz ustreznih polj združijo v izhodnem polju, tako da ima prikaz poizvedbe enako število polj kot vsaka od izjav »SELECT«.

  • Poizvedba za združevanje je značilna za SQL in jo je treba vnesti neposredno v SQL. Če želite napisati poizvedbe, značilne za SQL, vključno s poizvedbami za združevanje, preklopite na pogled za SQL.

1. korak: Ustvarjanje poizvedb za izbiranje

Opomba : Čeprav lahko v poizvedbo vključite več tabel ali poizvedb, se predvideva, da vsaka poizvedba za izbiranje vključuje podatke iz le ene tabele.

  1. Na zavihku Ustvari v skupini Poizvedbe kliknite Načrt poizvedbe.

  2. V pogovornem oknu Pokaži tabelo dvokliknite tabelo s polji, ki jih želite vključiti. Tabela se doda v okno z načrtom poizvedbe.

  3. Zaprite pogovorno polje Pokaži tabelo.

  4. V oknu z načrtom poizvedbe dvokliknite vsako polje, ki ga želite vključiti.
    Ko izbirate polja, preverite, ali ste dodali enako število polj in ali so v enakem vrstne redu kot ste jih dodali tudi v druge poizvedbe za izbiranje. Še posebej pa bodite pozorni na vrste podatkov v poljih in preverite, ali imajo v drugih poizvedbah, ki jih združujete, združljive vrste podatkov s polji na istem mestu. Če na primer najprej izberete poizvedbo s petimi polji in prvo polje vsebuje podatke o datumu/uri, se prepričajte, da imajo vse druge poizvedbe za izbiranje, ki jih združujete, pet polj in prvo polje vsebuje podatke o datumu/uri itd.

  5. Po želji lahko dodate pogoje, da tako, da vnesete ustrezne izraze v vrstico pogoji mreže polja.

  6. Ko ste končali z dodajanjem polj in pogojev polj, zaženite poizvedbo za izbiranje in preglejte njen prikaz. Na zavihku načrt v skupini Rezultati kliknite Zaženi.

  7. Preklopite poizvedbo na pogled načrta.

  8. Shranite poizvedbo za izbiranje in jo pustite odprto.

  9. Ta postopek ponovite za vse poizvedbe za izbiranje, ki jih želite združiti.

Če želite več informacij o uporabi pogojev v poizvedbi, preberite Uporaba pogojev v poizvedbi.

2. korak: Združevanje poizvedb za izbiranje

V tem koraku ustvarite tako, da uporabite izjav SQL poizvedbe za združevanje. (Če želite več informacij, glejte razdelek sintaksa SQL pod.)

  1. Na zavihku Ustvari v skupini Poizvedbe kliknite Načrt poizvedbe.

  2. Zaprite pogovorno polje Pokaži tabelo.

  3. Na zavihku Načrt v skupini Poizvedba kliknite Zapri.

Access skrije okno »Načrt poizvedbe« in prikaže zavihek predmeta za pogled SQL, ki je trenutno prazen.

  1. Kliknite zavihek prve poizvedbe za izbiranje, ki jo želite združiti v poizvedbo za združevanje.

  2. Na zavihku »osnovno« kliknite pogled > Pogled SQL.

  3. Kopirajte izjavo SQL za izbrano poizvedbo za izbiranje. Kliknite zavihek poizvedbe za združevanje, ki ste ga ustvarili v 1. koraku.

  4. Prilepite izjavo SQL poizvedbe za izbiranje na zavihek predmeta za pogled SQL poizvedbe za združevanje.

  5. Izbrišite podpičje (;) na koncu izjave SQL poizvedbe za izbiranje.

  6. Pritisnite Enter, da premaknete kazalec eno vrstico navzdol in v novo vrstico vnesite UNION .

  7. Kliknite zavihek naslednje poizvedbe za izbiranje, ki jo želite združiti v poizvedbo za združevanje.

  8. Ponavljate korake od 5 do 10 tega postopka, dokler niste kopirali in prilepili vseh izjav SQL poizvedb za izbiranje v okno »Pogled SQL« poizvedbe za združevanje. Ne izbrišite podpičja oz. ne vnesite ničesar za izjavo SQL, ki pripada zadnji poizvedbi za izbiranje.

  9. Na zavihku Načrt v skupini Rezultati kliknite Zaženi.

Rezultati poizvedbe za združevanje so prikazani v Pogled podatkovnega lista.

Na vrh strani

Namigi za uporabo poizvedb za združevanje

  • Če želite ločiti, katera vrstica je iz katere tabele, v vsako izjavo za izbiranje dodajte besedilni niz.

    Če na primer izjava za izbiranje pridobiva polja iz tabele »Izdelki«, druga pa iz tabele »Storitve«, dodajte niz »Izdelek« kot polje na koncu prve, »Storitev« pa na koncu druge izjave. S ključno besedo AS lahko nizom dodelite tudi polje z vzdevkom (na primer »vrsta«), kot je prikazano na tem primeru:

    SELECT field1, field2, ... "Product" AS type

    SELECT field1, field2, ... "Service" AS type

    V prikaz poizvedbe bi bilo vključeno polje »vrsta«, ki bi pokazalo, ali je vrstica iz tabele »Izdelki« ali »Storitve«.

  • V vsaki ključni besedi UNION sta združeni izjavi SELECT, ki sta takoj pred in za ključno besedo. Če uporabite ključno besedo ALL in nekaj ključnih besed UNION v vaši, a ne v drugih poizvedbah, bodo rezultati vključevali podvojene vrstice para izjav SELECT, ki sta združeni s ključnima besedama UNION ALL, ne bodo pa vključevali podvojenih vrstic izjav SELECT, ki sta združeni le z besedo UNION.

  • Število, vrste podatkov in vrstni red polj v poizvedbah za izbiranje se morajo ujemati. Uporabite lahko izraze, na primer izračuni in podpoizvedbe, če želite, da bodo ustrezali.

    Primerjate lahko na primer polje z dvomestnim zapisom leta s poljem, ki ima štirimestni zapis, tako da uporabite funkcijo Right, s katero ekstrahirate zadnji dve števki v štirimestnem zapisu leta.

Uporaba rezultatov poizvedbe za združevanje za ustvarjanje nove tabele

Najprej uporabite poizvedbo za združevanje kot vnos za novo poizvedbo za izbiranje, in nato uporabite kot osnovo poizvedbe za izdelavo tabele, kot je prikazano v naslednjih korakih:

  1. Ustvarite in shranite poizvedbo za združevanje.

  2. Na zavihku Ustvari v skupini Poizvedbe kliknite Načrt poizvedbe.

  3. V pogovornem oknu Pokaži tabelo kliknite zavihek Poizvedbe.

  4. Dvokliknite poizvedbo za združevanje in zaprite pogovorno okno Pokaži tabelo.

    Opomba : Če je v vrstici s sporočili prikazano varnostno opozorilo, bodo poizvedbe za dejanja morda onemogočene. Če jih želite omogočiti, v vrstici s sporočili kliknite Omogoči vsebino.

  5. V mreži načrta poizvedbe na zavihku predmeta poizvedbe za združevanje dvokliknite zvezdico (*), če želite uporabiti vsa polja poizvedbe za združevanje in ustvariti novo tabelo.

  6. Na zavihku Načrt v skupini Vrsta poizvedbe kliknite Izdelava tabele.

  7. V pogovornem oknu Izdelava tabele vnesite ime za novo tabelo.

  8. Po želji lahko določite drugo zbirko podatkov, v kateri boste ustvarili tabelo.

  9. Kliknite V redu.

  10. Na zavihku Načrt v skupini Rezultati kliknite Zaženi.

Uporaba poizvedbe za združevanje za izvajanje polnega zunanjega združevanje.

Poizvedbo za združevanje lahko uporabite, če želite izvesti polno zunanji stik. Polno zunanje združevanje ne omeji vrnjenih vrstic združenih tabel, a združi vrstice na osnovi vrednosti v polju za združevanje.

  1. Ustvarite poizvedbo z levim zunanjim združevanjem v polju, ki ga želite uporabiti za polno zunanje združevanje.

  2. Na zavihku Osnovno v skupini Pogledi kliknite Ogled in nato Pogled SQL.

  3. Pritisnite kombinacijo tipk Ctrl+C, da kopirate kodo SQL.

  4. Izbrišite podpičje na koncu stavka FROM in pritisnite Enter.

  5. Vnesite UNIONin pritisnite tipko Enter.

    Opomba : Ključne besede ALL ne uporabite pri poizvedbi za združevanje, s katero želite izvesti polno zunanje združevanje.

  6. Pritisnite kombinacijo tipk Ctrl+V, da prilepite kodo SQL, ki ste jo kopirali v 3. koraku.

  7. V kodi, ki ste jo prilepili, spremenite LEVO ZDRUŽEVANJE v DESNO ZDRUŽEVANJE.

  8. Izbrišite podpičje na koncu drugega stavka FROM in pritisnite Enter.

  9. Dodajte stavek WHERE, v katerem je navedena vrednost polja za združevanja v prvi tabeli, navedeni v stavku FROM (leva tabela), NIČ.

    Če je stavek FROM na primer:

    FROM Products RIGHT JOIN [Order Details] 
    ON Products.ID = [Order Details].[Product ID]

    Bi dodali ta stavek WHERE:

    WHERE Products.ID IS NULL

  10. Vnesite podpičje (;) na konec stavka WHERE, če želite označiti konec poizvedbe za združevanje.

  11. Na zavihku Načrt v skupini Rezultati kliknite Zaženi.
    Rezultati poizvedbe za združevanje so prikazani v Pogled podatkovnega lista.

Če želite več informacij, glejte združevanje virov podatkov v poizvedbi.

Na vrh strani

Zahteve in sintaksa SQL za poizvedbo za združevanje

Nekaj zahtev za poizvedbo za združevanje

  • Poizvedbe za izbiranje, ki jih združite v poizvedbi za združevanje, morajo imeti enako število izhodnih polj, biti v istem vrstnem redu in z enako ali združljivo vrsto podatkov. Ko zaženete poizvedbo za združevanje, se podatki iz ustreznih polj združijo v izhodnem polju, tako da ima prikaz poizvedbe enako število polj kot vsaka od izjav »SELECT«.

    Opomba : Za namene poizvedbe za združevanje sta vrsti podatkov »Število« in »Besedilo« združljivi

  • Poizvedba za združevanje je značilna za SQL in jo je treba napisati neposredno v SQL. Če želite ustvariti poizvedbe, značilne za SQL, vključno s poizvedbami za združevanje, preklopite na Pogled SQL.

Sintaksa SQL poizvedbe za združevanje

V poizvedbi za združevanje in vsaka poizvedba za izbiranje (imenovana tudi izjava SELECT) te stavke:

Stavek

Vsebuje seznam ...

SELECT

polj s podatki, ki jih želite pridobiti.

FROM

tabel s temi polji.

Izbirno WHERE

pogojev za ta polja.

Izjave SELECT se združujejo s ključno besedo UNION.

Osnovna sintaksa SQL poizvedbe za združevanje je:

SELECT field_1[, field_2,…]
FROM table_1[, table_2,…]
UNION [ALL]
SELECT field_a[, field_b,...]
FROM table_a[, table_b,…];

V zbirki podatkov sta na primer tabela »Izdelki« in tabela »Storitve« in v obeh so polja z imeni izdelkov in storitev, cene, garancija ali jamstvo ter podatki o tem, ali izključno ponujate izdelke in storitve. Čeprav so v tabeli »Izdelki« shranjeni podatki o garanciji, v tabeli »Storitve« pa podatki o jamstvu, so osnovni podatki isti (ali jamčite za kakovost določenega izdelka ali storitve). Uporabite poizvedbo za združevanje, kot je ta, če želite iz dveh tabel združiti vsa štiri polja:

SELECT name, price, warranty_available, exclusive_offer
FROM Products
UNION ALL
SELECT name, price, guarantee_available, exclusive_offer
FROM Services;

Podrobno si oglejmo primer prejšnje sintakse:

Sintaksa

Razlaga

Dodatne informacije

SELECT ime, cena, razpoložljivost_garancije, izključna_ponudba

Prvi stavek SELECT

Stavku SELECT sledi seznam identifikatorjev, ki označujejo polja, iz katerih želite pridobiti podatke.

Stavek SELECT mora navajati vsaj eno polje.

V stavku SELECT so navedena opisna polja ime , cena, razpoložljivost_garancije in izključna_ponudba.

Izdelki FROM

Prvi stavek FROM

Stavek FROM sledi stavku SELECT in skupaj tvorita osnovno izjavo SELECT.

Stavku FROM sledi seznam identifikatorjev, ki navajajo tabele s polji, navedenimi v stavku SELECT.

Stavek FROM mora navajati vsaj eno tabelo.

Ta stavek FROM navaja oznako tabele Izdelki.

UNION ALL

Ključna beseda UNION in izbirna ključna beseda ALL

Rezultate izjave SELECT, ki je pred izjavo UNION, program združi z rezultati izjave SELECT, ki sledi izjavi UNION.

Ko uporabite ključno besedo ALL, program podvojenih vrstic ne odstrani iz rezultatov poizvedbe za združevanje.

Če uporabite ključno besedo ALL, poizvedba deluje hitreje, saj Accessu ni treba preverjati, ali obstajajo podvojene vrstice.

Če je izpolnjen kateri koli od teh pogojev, uporabite ključno besedo ALL:

  • Prepričani ste, da poizvedbe za izbiranje ne bodo ustvarile podvojenih vrstic.

  • Ni pomembno, če so v rezultatih podvojene vrstice.

  • Želite si ogledati podvojene vrstice.

SELECT ime, cena, razpoložljivost_jamstva, izključna_ponudba

Drugi stavek SELECT

Nekaj pravil:

  • Drugi stavek SELECT mora imeti enako število polj kot prvi stavek SELECT.

  • Polja s pogostimi podatki v skupni rabi morajo biti v stavku prikazati v enakem vrstnem redu.

  • Polja s pogostimi podatki v skupni rabi morajo imeti enake ali združljive vrste podatkov.

Opomba : Imena polj v prikazu poizvedbe za združevanje so vzeta iz prvega stavka SELECT. Zato imajo v tem primeru podatki iz polja »razpoložljivost_garancije« in »razpoložljivost_jamstva« v prikazu poizvedbe ime »razpoložljivost_garancije«.

Storitve FROM

Drugi stavek FROM

V tabelah v stavkih FROM poizvedbe za združevanje ni omejitev. Ustvarite lahko poizvedbo za združevanje, ki uporablja enake tabele v vsakem stavku FROM. V stavkih FROM imate lahko različno število tabel. V našem primeru ima vsak stavek FROM le eno tabelo.

Na vrh strani

Opomba : Strojni prevod – zavrnitev odgovornosti: Ta članek je bil preveden z računalniškim programom brez človeškega posredovanja. Microsoft skuša s strojno prevedenimi članki vsebino o Microsoftovih izdelkih, storitvah in tehnologijah približati osebam, ki ne razumejo angleščine. Ker je bil članek strojno preveden, so lahko v njem jezikovne, slovnične in pravopisne napake.

Razširite svoja znanja
Oglejte si izobraževanje
Prvi dobite nove funkcije
Pridružite se programu Office Insider

Vam je bila informacija v pomoč?

Zahvaljujemo se vam za povratne informacije.

Zahvaljujemo se vam za povratne informacije. Videti je, da bi vam prišla prav pomoč enega od naših Officeovih agentov za podporo.

×