محرر استعلام مصدر البيانات
قم بإنشاء استعلامات لمصادر البيانات الخاصة بعناصر واجهة المستخدم الخاصة بالجداول والرسوم البيانية لاختيار بيانات محددة من قاعدة البيانات. تُبنى الاستعلامات على شكل حقل من قاعدة البيانات يتبعه علامة = ثم عامل ربط أو رقم أو سلسلة نصية:
database_string=my string database_number=1234 database_numger=BETWEEN(3, 6)
يمكن إثراء الاستعلامات باستخدام كود JavaScript محدد:
حساب الوقت والتاريخ باستخدام momentjs
المعاملات
العامل | الوصف |
|---|---|
| النطاق من قيمة البداية إلى قيمة النهاية. يتم فصل قيمتي البداية والنهاية بفاصلة |
| قائمة أرقام أو سلاسل نصية مفصولة بفواصل للمقارنة معها |
| أكبر من القيمة |
| أصغر من القيمة |
| نفي تعبير |
| قائمة بالتعبيرات المفصولة بفواصل. يجب استيفاء جميع الشروط |
| قائمة تعبيرات مفصولة بفواصل. يجب استيفاء شرط واحد على الأقل |
| يتحقق مما إذا كانت القيمة NULL |
أمثلة
اختر جميع السجلات التي يزيد راتبها عن 40000:
salary=GT(40000)
اختر جميع السجلات التي تحتوي على أسماء غير جيمس وجون وجو:
name=NOT(IN(James%2CJohn%2CJoe))
اختر جميع السجلات التي تحتوي على معرّف عميل غير NULL:
customerId=NOT(NULL())
يجب استخدام علامة الهروب للفواصل في الوسيطات:
. -> %2C
وهذا ضروري في حالة استخدام عوامل متداخلة كما في المثال أعلاه.
أمثلة باستخدام momentjs
في الأمثلة التالية، يتم تعيين params.interval بواسطة أداة اختيار التاريخ
اختر السجلات التي تحتوي على تاريخ يقع بين معلمتي تاريخ/وقت البداية والنهاية المحددتين بواسطة أداة اختيار التاريخ. يتم استخدام معلمات البداية والنهاية وformat() من مكتبة momentjs:
date=BETWEEN(${interval(params.interval).begin.format()}, ${interval(params.interval).end.format()})
اختر السجلات من السنة السابقة:
year=${interval(params.interval).begin.subtract(1, 'years').format('YYYY')}
الاستعلام عن نفس الشهر قبل عام واحد مع تنسيق الشهر بدون أصفار مسبقة:
month=${interval(params.interval).begin.subtract(params.sub, 'years').format('M')}
الاستعلام عن يوم الأسبوع (0-6):
weekday=${interval(params.interval).begin.day()}
الاستعلام المعتمد على المعلمات
إذا كان يجب تطبيق الاستعلام فقط في حالة تعيين معلمة معينة (مثل استعلام مصفوفة التصفية)، فيمكن تضمين العمود وكذلك سلسلة الاستعلام في عبارات if:
${filterMatrix.device_name ? 'device_name' : 'none'}=${filterMatrix.device_name ? filterMatrix.device_name : ''}
إذا تم تعريف المعلمة filterMatrix.device_name، فسيتم تعيين العمود إلى "device_name" وسلسلة الاستعلام إلى "filterMatrix.device_name"):
device_name=filterMatrix.device_name
إذا لم يتم تعريف نفس المعلمة، فسيتم تكوين الاستعلام الناتج للعمود «none» الذي من المحتمل ألا يكون موجودًا:
none=''