Pagkuha ng Data Mula sa Maramihang Mga Tabla Sa SQL Inner Joins

Ang Inner ay nagsasama ng impormasyon sa pagbalik na lumilitaw sa dalawa o higit pang mga database

Ang mga pagsali sa loob ay ang mga madalas na ginagamit na pagsali sa SQL. Sila ay nagbabalik lamang ng impormasyon na umiiral sa dalawa o higit pang mga talahanayan ng database. Tinutukoy ng kalagayan ng sumali kung aling mga talaan ang pinares magkasama at tinukoy sa sugnay SA. Halimbawa, kung kailangan mo ng isang listahan ng mga matchup ng driver / sasakyan kung saan ang parehong sasakyan at driver ay matatagpuan sa parehong lungsod, ang sumusunod na query sa SQL ay nagagawa ang gawaing ito:

PUMILI ang lastname, firstname, tag MULA driver, mga sasakyan SAAN drivers.location = vehicles.location

Narito ang mga resulta:

huling namename tag
----------- ------------ ----
Baker Roland H122JM
Smythe Michael D824HA
Smythe Michael P091YF
Jacobs Abraham J291QR
Jacobs Abraham L990MT

Tandaan na ang mga resulta ay eksakto kung ano ang hinanap. Posible upang higit pang pinuhin ang query sa pamamagitan ng pagtukoy ng karagdagang pamantayan sa Sugnay ng WHERE. Ipagpalagay na ang orihinal na query ay tumutugma sa mga driver sa mga sasakyan na hindi sila awtorisadong magmaneho (mga drayber ng trak sa mga kotse at vice versa). Maaari mong gamitin ang sumusunod na tanong upang malutas ang problemang ito:

PUMILI ang lastname, firstname, tag, vehicles.class MULA driver, mga sasakyan SAAN driver.location = vehicles.location AT drivers.class = vehicles.class

Tinutukoy ng halimbawang ito ang pinagmulan ng talahanayan para sa katangian ng klase sa pamagat ng PUMILI dahil ang klase ay hindi maliwanag-lumilitaw ito sa parehong mga talahanayan. Karaniwang tinutukoy ng code ang haligi ng talahanayan na dapat isama sa mga resulta ng query. Sa kasong ito, hindi ito magkakaroon ng pagkakaiba, dahil pareho ang mga haligi at sumali sila gamit ang isang equijoin. Gayunpaman, kung ang mga hanay ay naglalaman ng iba't ibang data, ang pagkakaiba na ito ay magiging kritikal. Narito ang mga resulta ng query na ito:

huling pangalan ng tag ng firstname tag
---------- ------------ ---- ------
Baker Roland H122JM Car
Smythe Michael D824HA Truck
Jacobs Abraham J291QR Car

Ang nawawalang mga hanay ay nagpares ni Michael Smythe sa isang kotse at si Abraham Jacobs sa isang trak, mga sasakyan na hindi pinahintulutan sa pagmamaneho.

Maaari mo ring gamitin ang panloob na pagsali upang pagsamahin ang data mula sa tatlo o higit pang mga talahanayan .