الانتقال إلى المحتوى الرئيسي
تعيد عبارة INTERSECT فقط الصفوف المشتركة بين ناتجَي الاستعلام الأول والاستعلام الثاني. ويجب أن تتطابق الاستعلامات من حيث عدد الأعمدة وترتيبها ونوعها. وقد تحتوي نتيجة INTERSECT على صفوف مكررة. تُنفَّذ عبارات INTERSECT المتعددة من اليسار إلى اليمين إذا لم تُحدَّد أقواس. ويكون لمعامل INTERSECT أولوية أعلى من عبارتي UNION وEXCEPT.
يمكن أن يكون الشرط أي تعبير وفقًا لمتطلباتك.

أمثلة

فيما يلي مثال بسيط على تقاطع الأرقام من 1 إلى 10 مع الأرقام من 3 إلى 8:
Query
Response
تكون INTERSECT مفيدة إذا كان لديك جدولان يشتركان في عمود واحد (أو عدة أعمدة). يمكنك إيجاد تقاطع نتائج استعلامين، ما دامت النتائج تحتوي على الأعمدة نفسها. على سبيل المثال، لنفترض أن لدينا بضعة ملايين من الصفوف من بيانات تاريخية للعملات المشفرة تتضمن أسعار التداول والحجم:
Query
Response
لنفترض الآن أن لدينا جدولًا باسم holdings يحتوي على قائمة بالعملات المشفّرة التي نملكها، إلى جانب عدد الوحدات من كلٍّ منها:
Query
يمكننا استخدام INTERSECT للإجابة عن أسئلة مثل “ما العملات التي نملكها والتي تم تداولها بسعر يتجاوز 100 دولار؟”:
Query
Response
وهذا يعني أنه في وقتٍ ما، جرى تداول Bitcoin وEthereum فوق 100 دولار، بينما لم يُتداول DOGEFI وBitcoin Diamond فوق 100 دولار مطلقًا (على الأقل استنادًا إلى البيانات المتاحة لدينا هنا في هذا المثال).

INTERSECT DISTINCT

لاحظ أنه في الاستعلام السابق كانت لدينا عدة حيازات من Bitcoin وEthereum جرى تداولها بأكثر من 100 دولار. وقد يكون من الأفضل إزالة الصفوف المكررة (لأنها لا تضيف إلا تكرارًا لما نعرفه بالفعل). يمكنك إضافة DISTINCT إلى INTERSECT لإزالة الصفوف المكررة من النتيجة:
Query
Response
انظر أيضًا
آخر تعديل في ٢ يوليو ٢٠٢٦