कम्प्युटरकार्यक्रम

एउटा उदाहरण, विस्तृत विवरण, त्रुटि को प्रयोग - बायाँ (SQL) सामेल

कुनै पनि वास्तविक संबंधात्मक डाटाबेस मा, सबै जानकारी छुट्टै तालिका मा वितरण गरिएको छ। को टेबल धेरै प्रत्येक अन्य संग संचार योजना मा निस्केको सेट छन्। तथापि, को मद्दतले एसक्युएल प्रश्नहरु यो एकदम सम्भव छैन क्षेत्रीय सम्मिलित डाटा, बीच लिंक राख्नु हो। यो जो तपाईं टेबल को कुनै पनि नम्बर बीचको सम्बन्ध निर्माण गर्न, र जस्तो देखिने disparate जानकारी जडान गर्न अनुमति दिन्छ एक सामेल जडान, प्रदर्शन गरेको छ।

बारेमा बायाँ बाहिरी सामेल यस लेखमा विशेष कुरा हुनेछ। जडान यस प्रकारको विवरण गर्न अघि बढ्नु अघि, केही डाटाबेस तालिकाहरू मा थप गर्नुहोस्।

आवश्यक टेबल तयार

उदाहरणका लागि, हाम्रो डेटाबेस मा, त्यहाँ मानिसहरू र तिनीहरूको अचल सम्पत्ति बारेमा जानकारी छ। जनताहरु (मान्छे), रियल्टी (अचल सम्पत्ति), Realty_peoples (तालिका सम्बन्ध, जो मान्छे के बाट सम्पत्ति पर्छ): सारांश तीन टेबल आधारमा। मान्छे को टेबल मा भण्डारण गरिएका निम्न डाटा मान:

जनताहरु

आईडी

L_name

F_name

Middle_name

जन्मदिन

1

Ivanova

Daria

बी

07/16/2000

2

Pugin

व्लादिस्लाव

Nikolaevich

29.01.1986

3

Evgenin

अलेक्जेन्डर

Federovich

04/30/1964

4

Annina

प्रेम

पी

31.12.1989

5

Gerasimovsky

आशा

पी

14.03.1992

6

Gerasimovsky

oleg

Albertovich

01/29/1985

7

Sukhanovskaya

न्यायपीठ

09/25/1976

8

Sukhanovskaya

जूलिया

Us |

01.10.2001

अचल सम्पत्ति:

रियल्टी

आईडी

ठेगाना

1

अर्कह्याङ्गेल्स्क, उल। Voronin, डी। 7, kv.6

2

अर्कह्याङ्गेल्स्क, उल। Severodvinskaya, डी। 84, Q। 9 BR। 5

3

अर्कह्याङ्गेल्स्क क्षेत्र, सेवेरद्वीन्स्क, सेन्ट। लेनिन, डी। 134, Q। 85

4

अर्कह्याङ्गेल्स्क क्षेत्र, Novodvinsk, उल। Proletarshaya, डी। 16, Q। 137

5

अर्कह्याङ्गेल्स्क, pl। Terekhina, डी। 89, Q। 13

सम्बन्ध मान्छे - सम्पत्ति:

Realty_peoples

id_peoples

id_realty

प्रकार

7

3

कुल संयुक्त स्वामित्व

8

3

कुल संयुक्त स्वामित्व

3

5

सम्पत्ति

7

1

सम्पत्ति

5

4

साधारण भागहरु

6

4

साधारण भागहरु

बाँकी सामेल (SQL) - विवरण

बाँकी मिश्रित निम्न विन्यास छ:

Table_A बायाँ शामिल table_B [{मा predicate} | {Tolbtsov संग spisok_ प्रयोग गरेर}]

र रूपमा निम्नानुसार schematically:

र यो अभिव्यक्ति "तालिका एक र टेबल बी को लाइन को predicate मात्र मिल्ने पङ्क्तिहरू प्रदर्शन गर्न, अपवाद बिना, सबै चयन रूपमा अनुवाद गरिएको छ। लागि जोडी एक स्ट्रिङ तालिकामा भने तालिका फेला परेन, त्यसपछि परिणामस्वरूप स्तम्भहरू रिक्त भर्न - मान "।

अक्सर, बायाँ जडानमा संकेत गर्दा, प्रयोग गरेर मात्र स्तम्भ नाम, जडान गर्न योजना छ जो नै हुँदा प्रयोग गरिन्छ।

बायाँ सामेल - प्रयोग उदाहरणहरू

बायाँ को जडान हामी, सूचीबाट सबै मानिसहरू भने जनताहरु सम्पत्ति देख्न सक्छौं। बायाँ यो गर्न सामेल SQL क्वेरी उदाहरण:

चयन गर्नुहोस् जनताहरु। * Realty_peoples.id_realty, Realty_peoples.type

देखि जनताहरु बायाँ शामिल Realty_peoples मा Peoples.id = Realty_peoples.id_peoples;

निम्न परिणामहरू:

Query1

आईडी

L_name

F_name

Middle_name

जन्मदिन

id_realty

प्रकार

1

Ivanova

Daria

बी

07/16/2000

2

Pugin

व्लादिस्लाव

Nikolaevich

29.01.1986

3

Evgenin

अलेक्जेन्डर

Federovich

04/30/1964

5

सम्पत्ति

4

Annina

प्रेम

पी

31.12.1989

5

Gerasimovsky

आशा

पी

14.03.1992

4

साधारण भागहरु

6

Gerasimovsky

oleg

Albertovich

01/29/1985

4

साधारण भागहरु

7

Sukhanovskaya

न्यायपीठ

09/25/1976

1

सम्पत्ति

7

Sukhanovskaya

न्यायपीठ

09/25/1976

3

कुल संयुक्त स्वामित्व

8

Sukhanovskaya

जूलिया

Us |

01.10.2001

3

कुल संयुक्त स्वामित्व

हामी देख्न रूपमा, Ivanova Darya Pugin व्लादिस्लाव र Anninoy Lyubovi कुनै अचल सम्पत्ति अधिकार दर्ता।

र के हामी, एक भित्री सामेल आन्तरिक सामेल प्रयोग प्राप्त थियो? तपाईंलाई थाहा, यो गैर-मेल खाने पङ्क्ति समावेश, त्यसैले तीन हाम्रो अन्तिम नमूना बाहिर बस गिरा हुनेछ:

Query1

आईडी

L_name

F_name

Middle_name

जन्मदिन

id_realty

प्रकार

3

Evgenin

अलेक्जेन्डर

Federovich

04/30/1964

5

सम्पत्ति

5

Gerasimovsky

आशा

पी

14.03.1992

4

साधारण भागहरु

6

Gerasimovsky

oleg

Albertovich

01/29/1985

4

साधारण भागहरु

7

Sukhanovskaya

न्यायपीठ

09/25/1976

1

सम्पत्ति

7

Sukhanovskaya

न्यायपीठ

09/25/1976

3

कुल संयुक्त स्वामित्व

8

Sukhanovskaya

जूलिया

Us |

01.10.2001

3

कुल संयुक्त स्वामित्व

यो दोस्रो संस्करण पनि हाम्रो समस्या को अवस्था पूरा गर्ने जस्तो थियो। तर, हामी अर्को मा संलग्न गर्न सुरु भने, र अर्को तालिका, परिणाम देखि तीन मान्छे पहिले नै irretrievably गएको। तसर्थ, व्यवहार मा, धेरै टेबल संयोजन गर्दा थप धेरै अक्सर प्रयोग बायाँ र दायाँ जडान आन्तरिक भन्दा सामेल।

SQL उदाहरण सामेल बाँया हेर्न जारी हुनेछ। हाम्रो घरहरू ठेगाना तालिका संलग्न:

चयन गर्नुहोस् जनताहरु। * Realty_peoples.id_realty, Realty_peoples.type, Realty.address

जनताहरु देखि

बायाँ Realty_peoples मा Peoples.id = Realty_peoples.id_peoples शामिल

बाँयामा Realty.id = Realty_peoples.id_realty रियल्टी शामिल

अब हामी कानुन मात्र छैन एक प्रकारको, तर पनि अचल सम्पत्ति को ठेगाना प्राप्त:

Query1

आईडी

L_name

F_name

Middle_name

जन्मदिन

id_realty

प्रकार

ठेगाना

1

Ivanova

Daria

बी

07/16/2000

2

Pugin

व्लादिस्लाव

Nikolaevich

29.01.1986

3

Evgenin

अलेक्जेन्डर

Federovich

04/30/1964

5

सम्पत्ति

अर्कह्याङ्गेल्स्क, pl। Terekhina, डी। 89, Q। 13

4

Annina

प्रेम

पी

31.12.1989

5

Gerasimovsky

आशा

पी

14.03.1992

4

साधारण भागहरु

अर्कह्याङ्गेल्स्क क्षेत्र, Novodvinsk, उल। Proletarshaya, डी। 16, Q। 137

6

Gerasimovsky

oleg

Albertovich

01/29/1985

4

साधारण भागहरु

अर्कह्याङ्गेल्स्क क्षेत्र, Novodvinsk, उल। Proletarshaya, डी। 16, Q। 137

7

Sukhanovskaya

न्यायपीठ

09/25/1976

3

कुल संयुक्त स्वामित्व

अर्कह्याङ्गेल्स्क क्षेत्र, सेवेरद्वीन्स्क, सेन्ट। लेनिन, डी। 134, Q। 85

7

Sukhanovskaya

न्यायपीठ

09/25/1976

1

सम्पत्ति

अर्कह्याङ्गेल्स्क, उल। Voronin, डी। 7, kv.6

8

Sukhanovskaya

जूलिया

Us |

01.10.2001

3

कुल संयुक्त स्वामित्व

अर्कह्याङ्गेल्स्क क्षेत्र, सेवेरद्वीन्स्क, सेन्ट। लेनिन, डी। 134, Q। 85

बायाँ सामेल - त्रुटि को विशिष्ट प्रयोग: अवैध प्रक्रिया तालिका

बायाँ बाहिरी मा बनाएको आधारभूत गल्ती टेबल, दुई सामेल:

  1. सही डाटा हराएको थियो जसको लागि टेबल क्रम चयन गरियो।
  2. त्रुटिहरू कहाँ एउटा प्रश्न प्रयोग गर्दा टेबल सामेल।

पहिलो गल्ती विचार गर्नुहोस्। कुनै पनि समस्या को निर्णय गर्न पूर्व स्पष्ट हामी अन्त मा प्राप्त गर्न चाहनुहुन्छ के बुझे गर्नुपर्छ। माथिको उदाहरण मा, हामी मान्छे को हरेक एक एक लिए, तर पूर्ण जसको मालिक फेला परेन 2 नम्बर, अन्तर्गत वस्तु बारे जानकारी गुमाए।

हामी केही ठाउँमा प्रश्न मा टेबल सारियो भने, र सुरु हुनेछ «... रियल्टी बाँकी जनताहरु सामेल ... बाट» कुनै पनि एक सम्पत्ति, हामी तपाईंलाई बारेमा बताउन छैन, छैन हराएको थियो।

तर बायाँ जडान डराउने हुन छैन, पूरा बाह्य, परिणाम र मिलान, र मेल खाने लाइनहरु मा समावेश गरिएको छ जो स्विच गर्नुहोस्।

आखिर, नमूनाको मात्रा अक्सर धेरै ठूलो छ, र अतिरिक्त डाटा वास्तवमा बेकारी छ। आफ्नो उपलब्ध सम्पत्ति सूची वा तिनीहरूको मालिक संग सम्पूर्ण सम्पत्ति सूची (कुनै छ भने) संग सबै मान्छे को: - मुख्य कुरा बाहिर आंकडा तपाईं एक परिणाम प्राप्त गर्न चाहनुहुन्छ के।

बायाँ सामेल - त्रुटि को विशिष्ट प्रयोग: को कहाँ मा अवस्थाको सेट गर्दा अनुरोध सही छ

दोस्रो त्रुटि पनि डाटा को हानि सम्बन्धित, र सधैं तुरुन्तै स्पष्ट छन् छ।

जडानहरू सबै मानिसहरू र आफ्नो अवस्थित सम्पत्ति लागि डाटा प्राप्त मार्फत हामी बाँकी हुँदा गरेको प्रश्न फर्केर जान दिनुहोस्। निम्न सम्झना बायाँ SQL उदाहरण सामेल संग:

देखि जनताहरु बायाँ शामिल Realty_peoples मा Peoples.id = Realty_peoples.id_peoples;

मानौं हामी अनुरोध स्पष्ट गर्न चाहन्छु र छैन उत्पादन डाटा, गर्छ जहाँ व्यवस्था प्रकार - "सम्पत्ति"। हामी बस थप्न भने, बायाँ SQL, निम्न अवस्था एउटा उदाहरण सामेल प्रयोग गर्दै:

...

जहाँ प्रकार <> "सम्पत्ति"

हामी किनभने शून्य मूल्य रिक्त निम्नानुसार तुलना छैन, कुनै सम्पत्ति भएका मान्छे मा डाटा गुमाउनु हुनेछ:

Query1

आईडी

L_name

F_name

Middle_name

जन्मदिन

id_realty

प्रकार

5

Gerasimovsky

आशा

पी

14.03.1992

4

साधारण भागहरु

6

Gerasimovsky

oleg

Albertovich

01/29/1985

4

साधारण भागहरु

7

Sukhanovskaya

न्यायपीठ

09/25/1976

3

कुल संयुक्त स्वामित्व

8

Sukhanovskaya

जूलिया

Us |

01.10.2001

3

कुल संयुक्त स्वामित्व

यस कारण लागि निरन्तर देखि त्रुटिहरू रोक्न, यो जडान तुरुन्तै चयन अवस्था सेट गर्न सबै भन्दा राम्रो छ। हामी SQL उदाहरण सामेल बाँया संग निम्न विचार गर्न सुझाव।

चयन गर्नुहोस् जनताहरु। * Realty_peoples.id_realty, Realty_peoples.type

जनताहरु देखि

बायाँ शामिल Realty_peoples मा (Peoples.id = Realty_peoples.id_peoples र प्रकार <> "सम्पत्ति")

निम्नानुसार परिणाम हुनेछ:

Query1

आईडी

L_name

F_name

Middle_name

जन्मदिन

id_realty

प्रकार

1

Ivanova

Daria

बी

07/16/2000

2

Pugin

व्लादिस्लाव

Nikolaevich

29.01.1986

3

Evgenin

अलेक्जेन्डर

Federovich

04/30/1964

4

Annina

प्रेम

पी

31.12.1989

5

Gerasimovsky

आशा

पी

14.03.1992

4

साधारण भागहरु

6

Gerasimovsky

oleg

Albertovich

01/29/1985

4

साधारण भागहरु

7

Sukhanovskaya

न्यायपीठ

09/25/1976

3

कुल संयुक्त स्वामित्व

8

Sukhanovskaya

जूलिया

Us |

01.10.2001

3

कुल संयुक्त स्वामित्व

यसरी, बायाँ सरल निम्न द्वारा SQL उदाहरण सामेल हुनुहोस्, हामी सबै मानिसहरूको सूची, थप सार्दा प्राप्त, एक इक्विटी / संयुक्त स्वामित्व यी गुणहरू को एक।

एक निष्कर्षमा रूपमा म फेरि डाटाबेस कुनै पनि जानकारी को एक नमूना responsibly सेवन गर्नुपर्छ कि जोड चाहन्छ। बायाँ हामीलाई अगाडि खुलेको धेरै nuances SQL सरल उदाहरण सामेल हुनुहोस्, को व्याख्या जो एक को - तपाईं पनि आधारभूत प्रश्न लेख्न सुरु गर्नु अघि, तपाईं ध्यान दिएर हामी अन्त मा प्राप्त गर्न चाहनुहुन्छ के बुझ्न पर्छ। शुभकामना छ!

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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