ANY
Ushbu qo'llanmada siz PostgreSQL ANY operatoridan skalyar qiymatni quyi so'rov tomonidan qaytarilgan qiymatlar to'plami bilan solishtirish uchun qanday foydalanishni o'rganasiz.
PostgreSQL ANY operatori qiymatni quyi so'rov tomonidan qaytarilgan qiymatlar to'plamiga solishtiradi. Quyida ANY operatorining sintaksisi tasvirlangan:
expresion operator ANY(subquery)Ushbu sintaksisda:
Quyi so'rov aynan bitta ustunni qaytarishi kerak.
ANYoperatoridan oldin quyidagi taqqoslash operatorlaridan biri bo'lishi kerak =, <=, >, <, > va <>Agar quyi so'rovning har qanday qiymati shartga javob bersa,
ANYoperatoritrueqiymatini qaytaradi, aks holda u noto'g'ri qaytaradi.
E'tibor bering, SOME ANY so'zining sinonimi bo'lib, har qanday SQL iborasida SOME ni ANYga almashtirishingiz mumkin degan ma'noni anglatadi.
PostgreSQL ANY misollar
Namoyish uchun namunaviy ma'lumotlar bazasida quyidagi film va film_category jadvalidan foydalanamiz.

Quyidagi misol film toifasi bo'yicha guruhlangan filmning maksimal uzunligini qaytaradi:
Ushbu so'rovdan uzunligi har qanday film toifasining maksimal uzunligidan katta yoki unga teng bo'lgan filmlarni topadigan quyidagi bayonotda quyi so'rov sifatida foydalanishingiz mumkin:
Mana natija:

Har bir film toifasi uchun pastki so'rov maksimal uzunlikni topadi. Tashqi so'rov ushbu qiymatlarning barchasini ko'rib chiqadi va qaysi film uzunligi har qanday film toifasining maksimal uzunligidan kattaroq yoki unga teng ekanligini aniqlaydi.
E'tibor bering, agar quyi so'rov hech qanday qatorni qaytarmasa, butun so'rov bo'sh natijalar to'plamini qaytaradi.
ANY vs. IN
= ANY IN operatoriga ekvivalent.
Quyidagi misol toifasi Action yoki Drama bo'lgan filmni oladi.
Natijada:

Quyidagi ibora bir xil natijani beradigan IN operatoridan foydalanadi:
E'tibor bering, <> ANY operatori NOT IN dan farq qiladi. Quyidagi ifoda:
ga teng
Ushbu qo'llanmada siz qiymatni quyi so'rov tomonidan qaytarilgan qiymatlar to'plami bilan solishtirish uchun PostgreSQL ANY operatoridan qanday foydalanishni o'rgandingiz.
Last updated
Was this helpful?