بالإضافة إلى SQL القياسية، يدعم ClickHouse عدة لغات استعلام بديلة للاستعلام عن البيانات.
اللهجات المدعومة حاليًا هي:
clickhouse: لهجة SQL الافتراضية في ClickHouseprql: Pipelined Relational Query Language (PRQL)kusto: Kusto Query Language (KQL)
تُحدَّد لغة الاستعلام المستخدمة عبر الإعداد dialect.
SQL القياسية
تُعد SQL القياسية لغة الاستعلام الافتراضية في ClickHouse.
SET dialect = 'clickhouse'Pipelined Relational Query Language (PRQL)
لتمكين PRQL:
SET allow_experimental_prql_dialect = 1; -- this SET statement is required only for ClickHouse versions >= v25.1
SET dialect = 'prql'مثال لاستعلام PRQL:
from trips
aggregate {
ct = count this
total_days = sum days
}في الخلفية، يستخدم ClickHouse الترجمة التحويلية من PRQL إلى SQL لتشغيل استعلامات PRQL.
Kusto Query Language (KQL)
لتمكين KQL:
SET allow_experimental_kusto_dialect = 1; -- this SET statement is required only for ClickHouse versions >= 25.1
SET dialect = 'kusto'numbers(10) | project number┌─number─┐
│ 0 │
│ 1 │
│ 2 │
│ 3 │
│ 4 │
│ 5 │
│ 6 │
│ 7 │
│ 8 │
│ 9 │
└────────┘لاحظ أن استعلامات KQL قد لا تتمكن من الوصول إلى جميع الدوال المعرَّفة في ClickHouse.