ComputerProgramming

Wala apil (SQL) - usa ka panig-ingnan, ang detalyado nga paghulagway, paggamit sa sayop

Sa bisan unsa nga tinuod nga relasyon database, sa tanan nga impormasyon nga-apod-apod sa usa ka lain nga lamesa. Daghan sa mga lamesa nga gibutang diha sa pamaagi sa komunikasyon sa usag usa. Apan, uban sa tabang sa SQL pangutana kini mao ang na posible nga sa pagbutang sa usa ka link sa taliwala sa mga data, wala makulit sa sirkito. Kini mao ang gibuhat pinaagi sa paghimo sa usa ka apil koneksyon, nga nagtugot kaninyo sa pagtukod sa usa ka relasyon tali sa bisan unsa nga gidaghanon sa mga lamesa, ug bisan Sumpaysumpaya daw disparate nga impormasyon.

Kini nga artikulo ang istorya ilabi bahin sa wala nga gawas nga moapil. Sa wala pa mopadayon ngadto sa paghulagway sa niini nga matang sa koneksyon, makadugang sa pipila ka lamesa database.

Pag-andam sa gikinahanglan nga mga lamesa

Pananglitan, sa atong database, adunay impormasyon mahitungod sa mga tawo ug sa ilang tinuod nga kahimtang. Katingbanan base sa tulo ka mga lamesa: Peoples (mga tawo), Realty (tinuod nga kahimtang), Realty_peoples (relasyon sa lamesa, ang mga tawo nga gikan sa kabtangan nga iya sa). Hunahunaa ang mosunod nga mga data nga gitipigan sa mga lamesa sa mga katawohan:

Peoples

id

L_name

F_name

Middle_name

Birthday

1

Ivanova

Daria

B.

07/16/2000

2

Pugin

Vladislav

Nikolaevich

29.01.1986

3

Evgenin

Alejandro

Federovich

04/30/1964

4

Annina

nahigugma

P.

31.12.1989

5

Gerasimovsky

paglaum

P.

14.03.1992

6

Gerasimovsky

Oleg

Albertovich

01/29/1985

7

Sukhanovskaya

jury

A.

09/25/1976

8

Sukhanovskaya

Julia

Y.

01.10.2001

Ang tinuod nga kahimtang:

Realty

id

address

1

Arkhangelsk, UL. Voronin, d. 7, kv.6

2

Arkhangelsk, UL. Severodvinskaya, d. 84, q. 9 BR. 5

3

Arkhangelsk rehiyon, Severodvinsk, st. Lenin, d. 134, q. 85

4

Arkhangelsk rehiyon, Novodvinsk, ul. Proletarshaya, d. 16, q. 137

5

Arkhangelsk, pl. Terekhina, d. 89, q. 13

Nga relasyon sa mga tawo - kabtangan:

Realty_peoples

id_peoples

id_realty

matang

7

3

Total joint pagpanag-iya

8

3

Total joint pagpanag-iya

3

5

kabtangan

7

1

kabtangan

5

4

komon nga mga bahin

6

4

komon nga mga bahin

Wala apil (SQL) - Description

Wala compound ang mosunod nga syntax:

Table_A W ALA APIL table_B [{SA predicate} | {PAGGAMIT spisok_ sa tolbtsov}]

Ug schematically ingon sa mosunod:

Ug kini nga ekspresyon gihubad nga "Pagpili tanan, nga walay gawas, linya sa Table A ug Table B sa pagpasundayag lamang sa matching laray nga gihulma sa predicate. Kon ang lamesa nakaplagan diha sa lamesa hilo alang sa nagtinagurha sa usa ka, unya pun-on ang mga resulta haligi-bili - mga hiyas ".

Kasagaran, sa diha nga sa wala koneksyon gipakita SA, sa paggamit sa gigamit lamang sa diha nga ang mga ngalan nga kolum, nga giplano aron sa paghimo sa koneksyon mao ang mga sama nga.

Wala apil - mga panig-ingnan sa paggamit

Uban sa koneksyon sa sa wala nga atong makita, ang tanan nga mga katawhan gikan sa listahan kon may Peoples kabtangan. Sa pagbuhat niini sa wala moapil SQL pangutana nga panig-ingnan:

Pagpili sa Katawhan. *, Realty_peoples.id_realty, Realty_peoples.type

GIKAN Peoples W ALA APIL Realty_peoples SA Peoples.id = Realty_peoples.id_peoples;

Uban sa mosunod nga mga resulta:

Query1

id

L_name

F_name

Middle_name

Birthday

id_realty

matang

1

Ivanova

Daria

B.

07/16/2000

2

Pugin

Vladislav

Nikolaevich

29.01.1986

3

Evgenin

Alejandro

Federovich

04/30/1964

5

kabtangan

4

Annina

nahigugma

P.

31.12.1989

5

Gerasimovsky

paglaum

P.

14.03.1992

4

komon nga mga bahin

6

Gerasimovsky

Oleg

Albertovich

01/29/1985

4

komon nga mga bahin

7

Sukhanovskaya

jury

A.

09/25/1976

1

kabtangan

7

Sukhanovskaya

jury

A.

09/25/1976

3

Total joint pagpanag-iya

8

Sukhanovskaya

Julia

Y.

01.10.2001

3

Total joint pagpanag-iya

Ingon sa atong makita, Ivanova Darya Pugin Vladislav ug Anninoy Lyubovi Walay narehistro katungod sa tinuod nga kahimtang.

Ug unsa ang atong nadawat, sa paggamit sa usa ka sulod nga apil sa Galamhan apil? Samtang kamo mahibalo, Wala kini non-matching laray nga gihulma, mao nga sa tulo ka gikan sa atong katapusan nga sample nga lamang nga nagatulo:

Query1

id

L_name

F_name

Middle_name

Birthday

id_realty

matang

3

Evgenin

Alejandro

Federovich

04/30/1964

5

kabtangan

5

Gerasimovsky

paglaum

P.

14.03.1992

4

komon nga mga bahin

6

Gerasimovsky

Oleg

Albertovich

01/29/1985

4

komon nga mga bahin

7

Sukhanovskaya

jury

A.

09/25/1976

1

kabtangan

7

Sukhanovskaya

jury

A.

09/25/1976

3

Total joint pagpanag-iya

8

Sukhanovskaya

Julia

Y.

01.10.2001

3

Total joint pagpanag-iya

Kini daw nga sa ikaduha nga bersyon usab magtigum sa mga kondisyon sa atong problema. Apan, kon kita magsugod sa padapat, patampo sa usa, ug ang lain nga lamesa, sa tulo ka mga tawo gikan sa resulta na gitino na. Busa, diha sa buhat, sa diha nga ang paghiusa daghang mga lamesa mas labaw pa sa kasagaran nga gigamit Wala ug Tuo nga koneksyon kay sa Inner-apil.

Magpadayon sa pagtan-aw sa wala apil SQL mga panig-ingnan. Ipapilit sa usa ka lamesa uban sa mga pakigpulong sa among mga balay:

Pagpili sa Katawhan. *, Realty_peoples.id_realty, Realty_peoples.type, Realty.address

GIKAN Katawhan

W ALA APIL Realty_peoples SA Peoples.id = Realty_peoples.id_peoples

W ALA APIL Realty SA Realty.id = Realty_peoples.id_realty

Karon kita dili lamang usa ka matang sa balaod, apan usab ang address sa tinuod nga kahimtang:

Query1

id

L_name

F_name

Middle_name

Birthday

id_realty

matang

address

1

Ivanova

Daria

B.

07/16/2000

2

Pugin

Vladislav

Nikolaevich

29.01.1986

3

Evgenin

Alejandro

Federovich

04/30/1964

5

kabtangan

Arkhangelsk, pl. Terekhina, d. 89, q. 13

4

Annina

nahigugma

P.

31.12.1989

5

Gerasimovsky

paglaum

P.

14.03.1992

4

komon nga mga bahin

Arkhangelsk rehiyon, Novodvinsk, ul. Proletarshaya, d. 16, q. 137

6

Gerasimovsky

Oleg

Albertovich

01/29/1985

4

komon nga mga bahin

Arkhangelsk rehiyon, Novodvinsk, ul. Proletarshaya, d. 16, q. 137

7

Sukhanovskaya

jury

A.

09/25/1976

3

Total joint pagpanag-iya

Arkhangelsk rehiyon, Severodvinsk, st. Lenin, d. 134, q. 85

7

Sukhanovskaya

jury

A.

09/25/1976

1

kabtangan

Arkhangelsk, UL. Voronin, d. 7, kv.6

8

Sukhanovskaya

Julia

Y.

01.10.2001

3

Total joint pagpanag-iya

Arkhangelsk rehiyon, Severodvinsk, st. Lenin, d. 134, q. 85

Wala apil - sa mga tipikal nga paggamit sa sayop: imbalido pamaagi lamesa

Basic sayop nga gihimo sa wala nga gawas nga apil lamesa, duha ka:

  1. Husto pinili nga sa kapunongan sa mga lamesa nga data nawala.
  2. Diin mga sayop sa diha nga ang paggamit sa usa ka pangutana sa moapil lamesa.

Tagda ang unang sayop. Sa wala pa ang desisyon sa bisan unsa nga problema kinahanglan nga tin-aw nga nasabtan nga ang gusto kita sa pagkuha sa katapusan. Sa panig-ingnan niini nga sa itaas, gikuha kami matag usa sa mga katawhan, apan bug-os nga nawad-an sa impormasyon mahitungod sa butang sa ilalum sa gidaghanon 2, kansang tag-iya wala hikaplagi.

Kon mibalhin kami sa mga lamesa sa usa ka pangutana sa pipila ka mga dapit, ug magsugod sa «... Gikan sa Realty sa wala moapil Katawhan ...» sa bisan unsa nga usa ka kabtangan, dili kita unta nawala, kamo dili pagsulti mahitungod sa mga tawo.

Apan ayaw kalisang sa mga wala koneksyon, switch sa bug-os nga sa gawas, nga gilakip sa mga resulta ug sa matching, ug dili ang matching linya.

Human sa tanan, ang gidaghanon sa sampol mao ang kanunay nga dako kaayo, ug dugang nga data mao ang tinuod nga walay pulos. Ang nag-unang butang nga - sa numero sa kon unsa ang imong gusto sa pagkuha sa usa ka resulta: sa tanan nga mga tawo uban sa usa ka listahan sa ilang anaa kabtangan o sa bug-os nga listahan kabtangan uban sa ilang mga tag-iya (kon sa bisan unsa nga).

Wala apil - sa mga tipikal nga paggamit sa sayop: Hangyo mao ang husto sa dihang sa paghimo sa mga kahimtang sa Hain

Ang ikaduha nga sayop usab nakig-uban sa pagkawala sa data, ug dili kanunay nga diha-diha dayon dayag.

Himoa ni mobalik ngadto sa pangutana sa dihang mibiya kita pinaagi sa koneksyon nakadawat data alang sa tanang mga tawo ug sa ilang kasamtangan nga mga kabtangan. Hinumdumi ang mosunod uban sa wala moapil SQL nga panig-ingnan:

GIKAN Peoples W ALA APIL Realty_peoples SA Peoples.id = Realty_peoples.id_peoples;

Pananglitan gusto kita sa pagpatin-aw sa mga hangyo ug dili output sa data, diin ang mga matang sa balaod - "Property". Kon kita lamang append, ginamit gibiyaan apil SQL, usa ka panig-ingnan sa mosunod nga kahimtang:

...

Diin matang <> "Property"

kita mawad-an sa mga data sa mga tawo nga walay kabtangan, tungod kay ang bili bili-bili dili itandi sama sa mosunod:

Query1

id

L_name

F_name

Middle_name

Birthday

id_realty

matang

5

Gerasimovsky

paglaum

P.

14.03.1992

4

komon nga mga bahin

6

Gerasimovsky

Oleg

Albertovich

01/29/1985

4

komon nga mga bahin

7

Sukhanovskaya

jury

A.

09/25/1976

3

Total joint pagpanag-iya

8

Sukhanovskaya

Julia

Y.

01.10.2001

3

Total joint pagpanag-iya

Aron malikayan ang mga sayop sa nahitabo alang niini nga rason, kini mao ang labing maayo nga ang mga kahimtang pagpili diha-diha dayon sa koneksyon. mosugyot kami sa paghunahuna sa mosunod nga uban sa wala moapil SQL nga panig-ingnan.

Pagpili sa Katawhan. *, Realty_peoples.id_realty, Realty_peoples.type

GIKAN Katawhan

W ALA APIL Realty_peoples ON (Peoples.id = Realty_peoples.id_peoples UG matang <> "Property")

Ang resulta mahimong ingon sa mosunod:

Query1

id

L_name

F_name

Middle_name

Birthday

id_realty

matang

1

Ivanova

Daria

B.

07/16/2000

2

Pugin

Vladislav

Nikolaevich

29.01.1986

3

Evgenin

Alejandro

Federovich

04/30/1964

4

Annina

nahigugma

P.

31.12.1989

5

Gerasimovsky

paglaum

P.

14.03.1992

4

komon nga mga bahin

6

Gerasimovsky

Oleg

Albertovich

01/29/1985

4

komon nga mga bahin

7

Sukhanovskaya

jury

A.

09/25/1976

3

Total joint pagpanag-iya

8

Sukhanovskaya

Julia

Y.

01.10.2001

3

Total joint pagpanag-iya

Busa, pinaagi sa pagsunod sa yano nga sa wala moapil SQL panig-ingnan, nakadawat kita og usa ka listahan sa tanan nga mga katawhan, sa pagbalhin sa dugang, usa niini nga mga kabtangan sa usa ka equity / joint pagpanag-iya.

Ingon sa usa ka konklusyon gusto ko nga og gibug-aton pag-usab nga ang usa ka sample sa bisan unsa nga impormasyon gikan sa database kinahanglan nga gikuha sa responsableng. Daghang mga nuances giablihan sa atubangan sa kanato uban wala moapil SQL yano nga panig-ingnan, ang katin-awan nga usa ka - sa dili pa ikaw magsugod sa pagsulat bisan sa nag-unang mga pangutana, kamo kinahanglan gayud nga pag-ayo sa pagsabut kon unsa ang gusto kita sa pagkuha sa katapusan. Maayong luck!

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ceb.delachieve.com. Theme powered by WordPress.