რა არის კარტეზიული პროდუქტი SQL Server-ში?
რა არის კარტეზიული პროდუქტი SQL Server-ში?

ვიდეო: რა არის კარტეზიული პროდუქტი SQL Server-ში?

ვიდეო: რა არის კარტეზიული პროდუქტი SQL Server-ში?
ვიდეო: SQL Tutorial 13 Introduction to JOIN, cartesian product 2024, მაისი
Anonim

The დეკარტის პროდუქტი , ასევე მოიხსენიება როგორც ა ჯვარი -join, აბრუნებს ყველა სტრიქონს მოთხოვნაში ჩამოთვლილ ცხრილებში. პირველი ცხრილის თითოეული მწკრივი დაწყვილებულია მეორე ცხრილის ყველა მწკრივთან. ეს ხდება მაშინ, როდესაც არ არის განსაზღვრული კავშირი ორ ცხრილს შორის. ორივე ცხრილს AUTHOR და STORE აქვს ათი მწკრივი.

თუ გავითვალისწინებთ, არის თუ არა Cross Join იგივე დეკარტის პროდუქტი?

ორივე უერთდება მისცეს იგივე შედეგი. ჯვარი - შეუერთდი არის SQL 99 შეუერთდი და დეკარტის პროდუქტი არის Oracle-ის საკუთრება შეუერთდი . ა ჯვარი - შეუერთდი რომ არ აქვს "სად" პუნქტი იძლევა დეკარტის პროდუქტი . დეკარტის პროდუქტი შედეგების ნაკრები შეიცავს რიგების რაოდენობას პირველ ცხრილში, გამრავლებული მეორე ცხრილის რიგების რაოდენობაზე.

გარდა ამისა, რა არის ჯვარედინი შეერთება SQL-ში მაგალითით? The CROSS JOIN შეუერთდა ყველა სტრიქონს პირველი ცხრილიდან (T1) მეორე ცხრილის ყველა მწკრივს (T2). სხვა სიტყვებით რომ ვთქვათ, ჯვრის შეერთება აბრუნებს მწკრივების დეკარტის ნამრავლს ორივე ცხრილიდან. The CROSS JOIN იღებს რიგს პირველი ცხრილიდან (T1) და შემდეგ ქმნის ახალ მწკრივს მეორე ცხრილის ყველა მწკრივისთვის (T2).

ამას გარდა, რა იწვევს დეკარტის პროდუქტს?

Ში კარტეზიანელი JOIN არის ერთი ცხრილის თითოეული მწკრივის შეერთება მეორე ცხრილის ყველა მწკრივთან. WHERE პირობის არარსებობის შემთხვევაში კარტეზიანელი JOIN მოიქცევა ისე, როგორც ა კარტეზიული პროდუქტი . ე.ი. რიგების რაოდენობა შედეგი-ნაკრებში არის პროდუქტი ორი ცხრილის რიგების რაოდენობა.

რა არის პროდუქტის შეერთება?

-ის განმარტება პროდუქტის გაწევრიანება The პროდუქტის შეერთება ადარებს ყველა საკვალიფიკაციო მწკრივს ერთი მიმართებიდან ყველა კვალიფიციურ მწკრივს მეორე მიმართებიდან და ინახავს მწკრივებს, რომლებიც შეესაბამება WHERE პრედიკატის ფილტრს. მოთხოვნაში არ არის მითითებული WHERE პუნქტი. The შეუერთდი არის უთანასწორობის პირობა. არის ORed შეუერთდი პირობები.

გირჩევთ: