مشاركة عبر


IIF (استعلام NoSQL)

ينطبق على: NoSQL

تقييم تعبير منطقي وإرجاع نتيجة أحد التعبيرين استنادا إلى نتيجة التعبير المنطقي. إذا تم تقييم التعبير المنطقي إلى true، فأرجع خيار التعبير الأول. وإلا، قم بإعادة خيار التعبير الثاني.

بناء الجملة

IIF(<bool_expr>, <true_expr>, <not_true_expr>)

الوسيطات

‏‏الوصف
bool_expr تعبير منطقي، يتم تقييمه واستخدامه لتحديد أي من التعبيرين التكميليين لاستخدامهما.
true_expr التعبير المراد إرجاعه إذا تم تقييم التعبير المنطقي إلى true.
not_true_expr التعبير الذي يجب إرجاعه إذا تم تقييم التعبير المنطقي إلى NOT true.

أنواع الإعادة

إرجاع تعبير، والذي قد يكون من أي نوع.

الأمثلة

يقوم هذا المثال الأول بتقييم تعبير منطقي ثابت وإرجاع أحد التعبيرين المحتملين.

SELECT VALUE {
    evalTrue: IIF(true, 123, 456),
    evalFalse: IIF(false, 123, 456),
    evalNumberNotTrue: IIF(123, 123, 456),
    evalStringNotTrue: IIF("ABC", 123, 456),
    evalArrayNotTrue: IIF([1,2,3], 123, 456),
    evalObjectNotTrue: IIF({"name": "Alice", "age": 20}, 123, 456)
}
[
  {
    "evalTrue": 123,
    "evalFalse": 456,
    "evalNumberNotTrue": 456,
    "evalStringNotTrue": 456,
    "evalArrayNotTrue": 456,
    "evalObjectNotTrue": 456
  }
]

يقيم هذا المثال أحد التعبيرين المحتملين على عناصر متعددة في حاوية استنادا إلى تعبير يقيم خاصية منطقية.

[
  {
    "name": "Estrel Set Cutlery",
    "onSale": true,
    "category": "camp-utensils",
    "pricing": {
      "msrp": 55.95,
      "sale": 30.85
    }
  },
  {
    "name": "Willagno Spork",
    "onSale": false,
    "category": "camp-utensils",
    "pricing": {
      "msrp": 20.15,
      "sale": 12.55
    }
  }
]

يستخدم الاستعلام حقولا في العناصر الأصلية.

SELECT
    p.name,
    IIF(p.onSale, p.pricing.sale, p.pricing.msrp) AS price
FROM
    products p
WHERE
    p.category = "camp-utensils"
[
  {
    "name": "Estrel Set Cutlery",
    "price": 30.85
  },
  {
    "name": "Willagno Spork",
    "price": 20.15
  }
]

الملاحظات

  • تشبه هذه الدالة عامل التشغيل الشرطي الثلاثي بلغات البرمجة المختلفة. لمزيد من المعلومات، راجع عامل التشغيل الشرطي الثلاثي.
  • لا تستخدم هذه الدالة الفهرس.

(راجع أيضًا )