محرر استعلام مصدر البيانات
قم بإنشاء استعلامات مصدر البيانات لأدوات الجداول والرسوم البيانية لاختيار بيانات محددة من قاعدة البيانات. يتم إنشاء الاستعلامات في شكل حقل قاعدة بيانات متبوعًا بعلامة = وعامل أو رقم أو سلسلة:
database_string=my string database_number=1234 database_numger=BETWEEN(3, 6)
يمكن إثراء الاستعلامات برمز JavaScript محدد:
حساب الوقت والتاريخ باستخدام momentjs
المشغلات
المشغل | الوصف |
|---|---|
| النطاق من القيمة البادئة إلى القيمة النهائية. يتم فصل القيم البادئة والنهائية بفاصلة |
| قائمة أرقام أو سلاسل مفصولة بفواصل للمقارنة |
| أكبر من القيمة |
| أقل من القيمة |
| نفي تعبير |
| قائمة تعبيرات مفصولة بفواصل. يجب استيفاء جميعها |
| قائمة تعبيرات مفصولة بفواصل. يجب استيفاء واحد على الأقل |
| يتحقق مما إذا كانت القيمة NULL |
أمثلة
حدد جميع السجلات التي يزيد راتبها عن 40000:
salary=GT(40000)
حدد جميع السجلات التي تحتوي على أسماء غير James و John و Joe:
name=NOT(IN(James%2CJohn%2CJoe))
حدد جميع السجلات التي تحتوي على customerId غير NULL:
customerId=NOT(NULL())
يجب تجاهل الفواصل في الحجج:
. -> %2C
هذا ضروري في حالة استخدام عوامل متداخلة كما في المثال أعلاه.
أمثلة باستخدام momentjs
في الأمثلة التالية، يتم تعيين params.interval بواسطة أداة اختيار التاريخ
حدد فقط السجلات التي تحتوي على تاريخ بين معلمتي تاريخ/وقت البدء والنهاية المقدمتين بواسطة أداة اختيار التاريخ. يتم استخدام Begin و End و 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=''