SELECT my_prod.name
FROM my_prod
NATURAL LEFT JOIN their_prod
33.Jadvallani birlashtirish Jadvallarni o‘zi bilan jamlash. Jadvallarni o‘zi bilan jamlash uchun xar bir satrning o‘zi yoki boshqa satrlar bilan kombinatsiyasini xosil qilishingiz mumkin. So‘ngra xar bir satr predikat yordamida baxolanadi. Bu turdagi jamlash boshqa turdagi jamlashdan farq qilmaydi, farqi ikki jadval bir xildir. Jadvallarni jamlashda qaytariluvchi ustun noilari oldiga jadval nomi qo‘yiladi. Bu usutunlarga so‘rovlarda murojaat qilish uchun xar xil nrmlarga ega bo‘lishi kerak. Buning uchun vaqtinchalik nomlar ya’ni psevdonimlar qo‘llandi. Ular so‘rov FROM jumlasida jadval nomidan so‘ng bo‘shlik qo‘yib yoziladi.
Misol: bir xil reytingga ega xamma buyurtmachilar juftlarini topish.
SELECT a.CName, b.CName, a.Rating FROM Customers a, Customers b WHERE a.Rating = b.Rating; Bu xolda SQL a va b jadvallarni jamlagandek ish tutadi. YUqorida keltirilgan misolda ortiqcha satrlar mavjud, xar bir kombinatsiya uchun ikkita qiymat. Birinchi psevdonimdagi A qiymat ikkinchi psevdonimdagi B qiymat bilan kombinatsiyasi olinadi, so‘ngra ikkinchi psevdonimdagi A qiymat birinchi psevdonimdagi B qiymat bilan kombinatsiyasi olinadi.
Xar gal satr o‘zi bilan solishtiriladi. Buni oldini olish soda usuli ikki qiymatga cheklanish kiritish, toki birinchi qiymat ikkinchisidan kichik bo‘lsin yoki alfavit bo‘yicha oldin kelsin. Bu predikatni aasimmetrik qiladi, natijada xudi shu qiymatlar teskari tartibda olinmaydi.
Sodda joylashtirilgan ostki so‘rovlar. SQL yordamitda so‘rovlarni bir birining ichiga joylashtirishingiz mumkin. Odatda ichki so‘rov qiymat xosil qiladi va bu qiymat tashqi predikat tomonidan tekshirilib, to‘g‘ri yoki noto‘g‘riligi tekshiriladi.
Misol: bizga sotuvchi nomi ma’lum: Motika, lekin bizSNum maydoni qiymatini bilmaymiz va Buyurtmachilar jadvalidan xamma buyurtmalarni ajratib olmoqchimiz. Buni quyidagicha amalga oshirish mumkin: