Tüm Ürünler
Search
Belge Merkezi

Quick BI:Veri Kümesi SSS

Son Güncelleme:Oct 04, 2026

Bu makale, veri kümeleri oluşturma ile ilgili sıkça sorulan soruları yanıtlar.

Özel SQL hataları

Özel SQL'inizi çalıştırdığınızda veya kaydettiğinizde hata alıyorsanız aşağıdaki yaygın nedenleri kontrol edin.

1. Yanlış özel SQL sözdizimi

Quick BI, özel SQL'i veritabanına göndermeden önce ön işleme tabi tutar; yer tutucuları ayrıştırır, bir limit yan tümcesi ekler ve SQL yorumları ekler. Bir sözdizimi hatası nedeniyle veritabanı bu aşamada hata döndürür.

Sözdizimini doğrulamak için deyimi doğrudan veritabanınızda çalıştırın. Geçmiş'te daha önce çalıştırılan deyimleri görüntüleyebilirsiniz.

image

2. SELECT deyiminden önceki deyimler

Quick BI, özel SQL'i çalıştırdığınızda veya kaydettiğinizde limit 200 yan tümcesini ekler; bu nedenle sorgu bir SELECT deyimiyle başlamalıdır. SELECT'den önce herhangi bir deyim (HINT deyimleri dahil) yerleştirmek sorgunun başarısız olmasına neden olur.

Bir HINT deyimi kullanmak için bunu satır içine yazmak yerine HINT Deyimini Ayarla seçeneğini belirleyin.

HINT deyimlerini destekleyen veri kaynakları için bkz. Veri kaynağı özellik listesi.

image

3. Varsayılan değerler olmadan kullanılan yer tutucular

Özel SQL, yer tutucular aracılığıyla parametre geçişini destekler. Bir raporu görüntülerken, sorgu denetimleri esnek filtreleme için alttaki SQL'e yer tutucu değerlerini aktarır. Yer tutucu kullanım durumları ve sözdizimi için bkz. Yer tutucular.

Bir SELECT deyimi içinde kullanılan her yer tutucunun bir varsayılan değeri olmalıdır. Bu değer olmadığında, SQL çalışma zamanında eksik kalır ve hata döndürür.

Aşağıdaki örnekte, Order Level alanı başarısız olur çünkü değer yer tutucusu $val{profit_range} için bir varsayılan değer yoktur. 100'lük bir varsayılan değer atamak ve SQL'i yeniden çalıştırmak sorunu çözer.

Kullanıcılar panoyu açtığında bir filtre değeri ayarlamazsa hataları önlemek için SELECT deyimlerindeki yer tutucular için yalnızca veri kümesi düzeyinde değil, genel bir varsayılan değer ayarlayın.

SELECT report_date, order_level, shipping_type,price,order_number,area,
   case when profit_amt< $val{profit_range} then'Loss' 
   when profit_amt> $val{profit_range} then'Profit'
   else 'Break-even'
   end 'Order Level'
from company_sales_record
where $expr{report_date :report_date}
and $expr{order_level :order_level}
and $expr{order_number :order_number}

image

image

4. Diğer sorunlar

Özel SQL'de yorumlar ve takma adlar için standart kuralları kullanın. Standart olmayan kullanım, veritabanının beklenmeyen alan adları döndürmesine, yer tutucu ayrıştırma hatalarına veya diğer hatalara neden olabilir.

Özel SQL'inizin sonuna noktalı virgül (;) eklemeyin.

Hesaplanan alan hataları

  1. Hesaplanan alanlar, fiziksel tablodaki sütunlara başvurur. Bir alanın veri türünü dönüştürmek için uygun dönüştürme işlevini kullanın; kullanıcı arayüzünde türü değiştirmek, alttaki fiziksel alanın türünü değiştirmez ve hata oluşmasına neden olabilir.

  2. Boyut hesaplanan alanları SUM veya AVG gibi toplama işlevleri içeremez. Toplama yapmak için alanı bunun yerine bir ölçü olarak kaydedin.

  3. Metin alanları yalnızca COUNT ve COUNTD toplamalarını destekler. SUM, MAX ve benzeri işlevler metin alanları için kullanılamaz. Bu hesaplamaları yapmadan önce alanı sayısal bir türe dönüştürün.

Yerel dosyalardan veri kümeleri oluşturma

Yüklenen yerel bir dosyadan bir veri kümesi oluştururken hedef veri kaynağının SQL sözdizimini kullanın. Örneğin, bir dosyanın keşif alanına yüklenmesi, veri kümesi oluştururken ve sorgularken ClickHouse sözdizimi gerektirir.

Bir dosyanın keşif alanına yüklenmesinin iki sınırlaması vardır: özel SQL desteklenmez ve kaynaklar arası birleştirmeler kullanılamaz. Bu özellikleri kullanmak için dosyayı, kaynaklar arası birleştirmeleri destekleyen bir grup alanında bulunan bir veri kaynağına yükleyin.

Bir dosyayı bir veritabanı veri kaynağına yüklerseniz ve özel SQL kullanırsanız, orijinal dosya adını değil, veritabanında otomatik olarak oluşturulan fiziksel tablo adına başvurun. Fiziksel tablo adını bulmak için veri kaynağı dosya listesini açın, dosya için ayarlar simgesine tıklayın ve düzenleme sayfasında adı arayın.image

image

Unix zaman damgalarını tarih/saate dönüştürme

Bir saat alanı data type Text veya Number olan bir Unix zaman damgası olarak depolanıyorsa, bunu standart bir tarih/saat alanına dönüştürmek için from_unixtime/@parmname işlevini kullanın.

  1. Veri kümesi düzenleme sayfasında, aşağıda gösterildiği gibi hesaplanan bir alan oluşturun.image

  2. Veri kümesini kaydedin ve yenileyin.image

Boş veya null değerlerin görüntülenmesini yapılandırma

  1. Veri kümesi ayarlarında boş değerler için görüntüleme stilini yapılandırın.

image

  1. Pano ayarlarında boş değerler için görüntüleme stilini yapılandırın.

image

Oran hesaplamaları için parametreli SQL kullanma

Quick BI, oran hesaplamalarını yerel olarak desteklemez; ancak bunları özel bir veri kümesinde parametreli SQL ile uygulayabilirsiniz.

Aşağıdaki örnek, kullanıcı tarafından seçilebilen tarih aralığı ve il/şehir filtreleriyle her şehrin eyaletindeki toplam satışlardaki payını hesaplar. Veri kümesinin dört alanı vardır: tarih (date), il (province), şehir (city) ve satış tutarı (order_amt).

select a.city,sum(fenzi)/sum(fenmu) as ratio
from
(select province,city,sum(order_amt) fenzi
 from  zhanbi_test
 where  $expr{date:date_para}
 and    $expr{province:province_para}
 and    $expr{city:city_para}
 group by province,city
)a
left  join
(select province,sum(order_amt) fenmu
 from  zhanbi_test
 where  $expr{date:date_para}
 and    $expr{province:province_para}
 and    $expr{city:city_para}
 group by province
)b on a.province=b.province

Bu sorgu city alanına göre toplama yapar; diğer alanlara göre toplama yapmak üzere uyarlayabilirsiniz. SQL'i oluşturduktan sonra, veri kümesinin parametre ayarlarında tarih alanını bir tarih türüne dönüştürün, ardından veri kümesini oluşturun ve bir panoya ekleyin.

Kümülatif hesaplamalar için parametreli SQL kullanma

Quick BI'nin birkaç yerleşik kümülatif hesaplama türü vardır: Yıl Başından Bugüne, Tarihsel Kümülatif, Ay Başından Bugüne, Çeyrek Başından Bugüne ve Özel. Veri kümesinde yapılandırılmış bir mali yıl varsa ve tarih alanı bir mali yıl alanıysa, gün düzeyindeki granülarite Mali Yıl Başından Bugüne ve Mali Çeyrek Başından Bugüne'yi de destekler. Ayrıntılar için bkz. Tarih Birikimi.

Yerleşik kümülatif hesaplamalar için boyutlarda aşağıda gösterildiği gibi tarih türünde bir day alanı seçin.image

Özel bir zaman dilimi üzerinde kümülatif değerleri hesaplamak için parametreli SQL kullanın. Aşağıdaki örnek aylık bir kümülatif toplamı hesaplar:

select  a.mon_date,avg(a.order_num) order_num,sum(b.order_num) add_num
from (
select date_format(report_date,'%Y/%m') mon_date,count(distinct order_id) order_num,max(date_format(report_date,'%Y/%m')) max_mon_date
from  company_sales_record_copy
where  $expr{report_date:month_date}
group by date_format(report_date,'%Y/%m')
)a
left join(
select date_format(report_date,'%Y/%m') mon_date,count(distinct order_id) order_num
from  company_sales_record_copy
where  $expr{report_date:month_date}
group by date_format(report_date,'%Y/%m')
)b on a.max_mon_date>=b.mon_date
group by a.mon_date        

Sorgu denetimi panodaki parametre alanına bağlandığında, bir ay aralığına göre filtreleme, aralığın ilk ayından başlayarak her ay için kümülatif değeri döndürür.

Tek bir tarihle son N günü sorgulama

Varsayılan olarak, Quick BI'de tek bir tarih seçmek yalnızca o güne ait verileri gösterirken, bir aralık seçmek tam aralık için verileri gösterir. İki ayrı grafikte hem belirli bir günü hem de ona kadar geçen N günü görüntülemek için tarih ofset ifadeleriyle parametreli SQL kullanın:

select   report_date,area,product_type,count(distinct order_id) order_num
from   company_sales_record
where  area in ('Southwest','Northwest','North China')
and    ( $expr{dateadd(report_date,1,'dd'):date1}
or      $expr{dateadd(report_date,2,'dd'):date1}
or      $expr{dateadd(report_date,3,'dd'):date1})
group by area,product_type,report_date

Satır düzeyinde güvenlik

Evet. Daha fazla bilgi için bkz. Satır düzeyinde güvenlik.

Varsayılan satır görüntüleme limiti

Varsayılan olarak 100 satır görüntülenir.

Veri görünümünde sayfalama

Hayır.

Yeni alanların görüntülenmemesi

Toplanmış hesaplanan alanlar veri önizlemesinde gösterilmez.

image

Harita grafiklerinde coğrafi verileri kullanma

Veri kümesi düzenleme sayfasında, coğrafi alanınızın boyut türünü uygun coğrafi bilgi türüne değiştirin.

image

Ayrıntılar için bkz. Veri kümesi oluşturma.

Alan adları olarak alan açıklamalarını kullanma

Çalışma alanı ayarlarında, o çalışma alanında veri kümeleri oluştururken tablo adlarının mı yoksa açıklamaların mı kullanılacağını yapılandırabilirsiniz.

Ayrıca veri kümesinin toplu alan yapılandırma panelinde birden çok alan seçebilir ve açıklamalarını alan adları olarak toplu şekilde uygulayabilirsiniz.

image

Not
  • Bir alanın açıklaması boşsa, alan adı olarak kullanılamaz.

  • Özel SQL kullanarak bir veri kümesi oluşturursanız, ifadede alan takma adlarını ayarlayın. Bu takma adlar, görüntülenen alan adları olarak hizmet eder.

Tablo değişikliklerinden sonra veri kümelerini güncelleme

Fiziksel bir alan artık bulunamadığında, Quick BI onu otomatik olarak kaldırmaz; alan analizlerde veya yukarı akış panolarında hala referans alınabilir olabilir. Alandaki değişiklikleri sağ panelde görüntülemek için tuvaldeki tabloya tıklayın, ardından tüm geçersiz alanları tek bir tıklamayla silin.

Birden çok veritabanından veri kümeleri oluşturma

Her iki veri kaynağından da tabloları tuvale sürükleyin, aralarında bir ilişki yapılandırın. Quick Engine ile hızlandırmadan sonra veriler kullanıma hazırdır. Quick Engine'i destekleyen veri kaynakları için bkz. Veri kaynağı özellik listesi.

Veri kümelerini başka bir çalışma alanına kopyalama

Çalışma alanları arasında veri kümesi kopyalama özelliğini kullanın. Ayrıntılar için bkz. Çalışma alanları arasında bir veri kümesi kopyalama.

Çok tablolu analiz için veri modellerini yapılandırma

Daha fazla bilgi için bkz. Model oluşturma.

Bir veri modeli yapılandırmak, tablolar arasındaki JOIN ilişkilerini tanımlar. Bunu veri kümesi düzenleme sayfasında ayarlayın. Ayrıntılar için bkz. Model oluşturma.image

Veri kümesi sorgu önbelleğinin faydaları

Sorgu sonucu önbelleğini etkinleştirmek rapor erişimini hızlandırır ve veritabanı yükünü azaltır. İlk istekten sonra, önbellek süresi içindeki sonraki sorgular önbellekten sunulur; veritabanı, önbellek süresi dolana kadar tekrar sorgulanmaz.

Yavaş SQL veri kümesi sorgularını optimize etme

  1. SQL mantığını optimize edin: dizinlerin kullanıldığını doğrulayın ve karmaşık birleştirmeleri mümkün olduğunda veritabanı görünümleriyle değiştirin.

  2. Filtre uygulanmadığında tam tablo taramalarını önlemek için SQL yer tutucuları için genel olarak etkili varsayılan değerler ayarlayın.