SQL dönüştürmeleri ekleme | Qlik Cloud Yardımı
Ana içeriğe geç Tamamlayıcı içeriğe geç

SQL dönüştürmeleri ekleme

Dönüştürme görevlerine SQL tabanlı tabloları dahil edebilirsiniz. Bir SQL dönüştürmesi, karmaşık veya basit dönüştürmeleri tanımlamak için bir işlem hattına bir SQL SELECT sorgusu girmenize olanak tanır. Üretken yapay zeka kullanarak SQL assistant'ın bir metin isteminden bir sorgu oluşturmasına izin verebilirsiniz. Ayrıca, bir ilk yükleme veya artımlı yükleme gerçekleştirildiğinde sorguyu çalışacak şekilde uyarlamak için makroları kullanabilirsiniz.

Bir dönüştürmeye SQL eklemeden önce verileri keşfetmek ve salt okunur SQL'i doğrulamak için SQL workbench'i kullanabilirsiniz. Daha fazla bilgi için bkz. SQL Workbench ile verileri keşfetme.

Bir dönüştürme görevi oluşturma hakkında daha fazla bilgi için bkz. Verileri dönüştürme.

SQL dönüştürmesi ekleme

Bir Dönüştür veri görevine bir SQL dönüştürmesi eklemek için:

  1. Dönüştür içinde, sorguya dahil edilecek veri kümelerini seçin ve SQL dönüştürmesi ekle'ye tıklayın.

    Ad bölümünde dönüştürmenin adını ayarlayın. Diğer ayarlar hakkında daha fazla bilgi için bkz. Ayarlar.

    SQL dönüştürmesini oluşturmaya hazır olduğunuzda Ekle'ye tıklayın.

    SQL dönüştürmesini düzenle görüntülenir.

  2. Sorgu bölmesinde SQL tabanlı tabloyu döndürecek sorguyu yazın.

    Daha fazla bilgi için bkz. SQL sorgusunu düzenleme.

  3. Sorguyu çalıştır'a tıklayın.

    Bu, meta verileri ve verilerin bir önizlemesini getirecektir.

  4. Parametreler bölümündeki parametreleri gözden geçirin.

    Daha fazla bilgi için bkz. Parametreler.

  5. Meta veriler bölümünde bir birincil anahtar ayarlayın.

    Daha fazla bilgi için bkz. Meta veriler.

  6. Sorgunun sonuçlarından memnun kaldığınızda Kaydet ve kapat'a tıklayın. Veri kümesi artık hedefler listesine eklenmiştir ve önizlemesini yapabilirsiniz.

SQL sorgusunu düzenleme

Sorgu bölmesinde SQL tabanlı tabloyu döndürecek sorguyu yazın. Sorgu yalnızca seçtiğiniz kaynak veri kümelerinden okuyabilir, ancak Ekle ile daha fazla kaynak veri kümesi ekleyebilirsiniz.

  • Nesneler bölümünden bir veri kümesi yüklemek için bir ifade oluşturabilirsiniz. daha fazla ve ardından SELECT ifadesi ekle'ye tıklayın.

  • daha fazla ve ardından Kopyala'ya tıklayarak bir veri kümesinin adını panoya kopyalayabilirsiniz.

  • Bir veri kümesi veya sütun adını düzenleyiciye taşımak için > öğesine tıklayın.

  • Düzenleyicide metin aramak ve değiştirmek için Ara öğesine tıklayın.

Bilgi notuÜretken yapay zeka kullanarak bir sorgu oluşturmak için SQL assistant kullanabilirsiniz. Daha fazla bilgi için bkz. Bir metin komut isteminden SQL dönüşümü oluşturma. SQL assistant, Qlik Cloud Government içinde kullanılamaz.

Artımlı yükleme kullanılıyorsa, bir ilk yükleme veya artımlı yükleme gerçekleştirildiğinde sorguyu çalışacak şekilde uyarlamak için Makrolar'ı kullanabilirsiniz.

Daha fazla bilgi için bkz. Sorguyu yükleme türüne uyarlamak için makroları kullanma.

Klavye kısayolları

Bilgi notuKlavye kısayolları, Windows ortamında çalıştığınız varsayılarak ifade edilmiştir. macOS için Ctrl yerine Command kullanın.
  • Ctrl+F Ara ve değiştir

  • Ctrl+/ Geçerli satırı yorum yap/yorumu kaldır

  • Ctrl+Enter Sorguyu çalıştır

  • Ctrl+Z Geri al

  • Ctrl+Y Yinele

Sonuçları önizleme

Sonuçlar bölümündeki verilerin bir örneğini kullanarak sonuçları önizleyebilirsiniz.

Bilgi notuVeri önizlemesi, Administration içinde kiracı düzeyinde etkinleştirilmelidir. Data Integration içinde verileri görüntüleme seçeneğini Ayarlar bölümünde, Özellik kontrolü altında bulabilirsiniz.

Verileri önizleyebilmek için aşağıdaki rollerin size atanmış olması gerekir:

  • Bağlantının bulunduğu alanda Verileri görüntüleyebilir.

  • Projenin bulunduğu alanda Görüntüleyebilir.

Verilerin bir örneği kullanılarak sonuçlar görüntülenir. Örneğe kaç veri satırının dahil edileceğini Satır sayısı ile ayarlayabilirsiniz.

  • Son yürütülen sorgunun son çalışma zamanını ve süresini görmek için Son yürütülen sorgu'ya tıklayın.

Sonuçları filtreleme

Sonuçları bir veya daha fazla sütuna göre filtreleyebilirsiniz.

  • Filtrelenecek ilk sütunda daha fazla ve ardından Filtrele'ye tıklayın.

    Hangi operatörün kullanılacağını ve hangi değere göre filtreleneceğini seçin.

    Filtre ekle'ye tıklayarak daha fazla sütun filtresi ekleyebilirsiniz.

Filtre yalnızca mevcut örnek verileri etkileyecektir.

Sonuçları sıralama

Veri örneğini belirli bir sütuna göre sıralayabilirsiniz.

  • Sıralanacak sütunda daha fazla ve ardından Artan düzende sırala veya Azalan düzende sırala'ya tıklayın.

Sıralama yalnızca mevcut örnek verileri etkileyecektir. Yalnızca 2024 yılına ait siparişleri dahil etmek için bir filtre kullandıysanız ve sıralama düzenini tersine çevirdiyseniz, örnek veriler yine de yalnızca 2024 yılına ait siparişleri içerecektir.

Görüntülenen sütunları yönetme

Sonuçlarda hangi sütunların görüntüleneceğini seçebilirsiniz. Dönüştürmeyi kaydettiğinizde seçim kaydedilmez.

  • Sütunda daha fazla ve ardından Sütunu gizle'ye tıklayarak bir sütunu gizleyin.

  • Herhangi bir sütunda daha fazla ve ardından Görüntülenen sütunlar'a tıklayarak tüm sütunların görünümünü yönetin.

Parametreler

SELECT sorgusundaki parametreleri değiştirmek için Parametreler'e tıklayın. Parametreler kaynak veya hedef nesnelerle eşlenmiş olmalıdır.

Şu durumlarda parametreler otomatik olarak eşlenir:

  • Nesneler bölümünde SELECT ifadesi ekle'yi kullandığınızda.

  • Bir veri kümesi veya sütun adını düzenleyiciye taşımak için > öğesine tıkladığınızda.

  • Bir parametre adı, Nesneler bölümündeki tablolardan bir tablo adıyla eşleştiğinde.

Bilgi notuRastgele parametre adları kullanırsanız, parametreleri manuel olarak eşlemeniz gerekir. Yalnızca veri kümesi adlarıyla eşleşen parametre adları otomatik olarak eşlenir.

Şunlarla eşleyebilirsiniz:

  • Geçmiş türü 2 yapıları (_history)

  • Geçerli yapılar

  • Hedef nesneler

    Hedef nesneleri yalnızca bir parametre artımlı bir makro içinde tanımlandığında eşleyebilirsiniz.

İpucu notuOkunması daha kolay bir sorguya sahip olmak için bir parametreyi bir referansla değiştirebilirsiniz. Parametre içindeki değeri değiştirin, SELECT sorgusu içindeki referans da değişecektir.

Meta veriler

Meta veriler bölümünde meta veri ayarlarını düzenleyebilirsiniz.

  • Anahtar sütununda birincil anahtarları ayarlayın.

    Anahtarları öner ve doğrula'ya tıklayarak uygun birincil anahtarlar için öneriler alabilir ve anahtarları doğrulayabilirsiniz.

  • Boş bırakılabilir sütununda sütunun boş bırakılabilir olup olmadığını ayarlayın.

  • Bir sütun seçin ve sütun adını, anahtarı, boş bırakılabilirliği ve veri türünü ayarlamak için Düzenle'ye tıklayın.

Anahtarları önerme ve doğrulama

Anahtarları öner ve doğrula'ya tıklayarak uygun birincil anahtarlar için öneriler alabilir ve anahtarları doğrulayabilirsiniz. Tam SQL sorgusu en az bir kez çalıştırılmış olmalıdır.

  • Bölgeler arası çıkarıma katılmayı seçtiyseniz, anahtarlar önermek için GenAI kullanılır. Bu, Qlik Cloud'in kiracı bölgenizin dışına çıkarım istekleri göndermesine olanak tanır. Çıkarım işleme konumları hakkında ayrıntılar ve en son bilgiler için bkz. Bölgeler arası çıkarımı etkinleştirme.

    Bilgi notuQlik, oluşturulan çıktıyı kontrol etmez. GenAI'nin doğası gereği, yanıtlar inceleme veya düzenleme yapılmadan gereksiniminizi karşılayan SQL üretmeyebilir. Oluşturulan sorgu, Qlik Müşteri Sözleşmesi şartları uyarınca "İçerik" olarak kabul edilir.
    Qlik Cloud Yönetimi notu

    GenAI destekli anahtar önerisi Qlik Cloud Government içinde kullanılamaz.

    GenAI etkinleştirilmemişse, anahtarlar kaynak tablo verilerine dayalı olarak programlı bir şekilde önerilecektir.

  • Doğrulama, yinelenen veya NULL değerler olmadığından emin olmak için bir SQL sorgusu çalıştırılarak her zaman GenAI kullanılmadan gerçekleştirilecektir.

    Bilgi notuDoğrulama yalnızca sorgu veri döndürdüğünde kullanılabilir.
  • Anahtarları öner ve doğrula

    Bu, sorguyu ve kaynak tablo anahtarlarını gözden geçirecek ve geçerli birincil anahtarlar önerecektir. Bu işlem biraz zaman alabilir.

  • Anahtarları doğrula

    Bu, benzersiz ve NULL olmadıklarından emin olmak için mevcut birincil anahtarları doğrulayacaktır. Bu işlem biraz zaman alabilir.

  • Doğrulama olmadan öner

    Bu, sorguyu ve kaynak tablo anahtarlarını gözden geçirecek ve doğrulama olmadan birincil anahtarlar önerecektir. Anahtarları uygulamadan önce manuel olarak gözden geçirin ve doğrulayın.

Sorguyu çalıştırma

Geliştirme sırasında herhangi bir zamanda Sorguyu çalıştır'a tıklayarak sorguyu çalıştırabilirsiniz. Bir sorguyu ilk çalıştırdığınızda meta veriler alınacaktır. Sorgu çalıştırıldığında Meta veriler bölümüne gidebilir ve dönüştürmenin tamamlanması için gerekli olan bir birincil anahtar ayarlayabilirsiniz.

Bilgi notuDüzenleyici birden fazla sorgu içeriyorsa, sorguyu seçip Sorguyu çalıştır'a tıklayarak tek bir sorgu çalıştırabilirsiniz.

Sorguyu yükleme türüne uyarlamak için makroları kullanma

Artımlı yükleme kullanılıyorsa, bir ilk yükleme veya artımlı yükleme gerçekleştirildiğinde sorguyu çalışacak şekilde uyarlamak için Makrolar'ı kullanabilirsiniz.

Makroyu seçin ve sorguyu ilgili yan tümcenin içine ekleyin.

  • Q_RUN_INCREMENTAL, yalnızca artımlı bir yükleme gerçekleştirildiğinde çalıştırılan bir sorgu yerleştirebileceğiniz bir yan tümce ekler.

  • Q_RUN_INITIAL_LOAD, yalnızca bir ilk yükleme gerçekleştirildiğinde çalıştırılan bir sorgu yerleştirebileceğiniz bir yan tümce ekler.

Her makro ile tam sorguyu belirtmeniz gerekmez. Kullanım durumunuza göre kodu ayarlayabilir veya ekleyebilirsiniz.

Kullanım durumu: Tarih aralığı kullanarak artımlı filtre:

Bu kullanım durumunda, bir sipariş verileri kümesinin özel SQL ile dönüştürülmesi gerekir. Bu büyük bir veri kümesi olduğundan, artımlı yüklemenin yalnızca son 12 saate ait siparişleri dikkate almasını sağlamak için artımlı filtrelemeyi dahil etmek istersiniz.

Bu temel sorgudur:

SELECT O.ORDER_ID, O.CUSTOMER_ID, OD.PRODUCT_ID, OD.QUANTITY, O.AMOUNT , OD.LAST_UPDATE_DTM FROM “mydb”.”myStorageTask”.”ORDER” O JOIN “mydb”.”myStorageTask”.”ORDER_DETAIL” OD ON O.ORDER_ID = OD.ORDER_ID

Bu, yalnızca son 12 saat içinde eklenen siparişleri dikkate aldığınız artımlı çalıştırma sırasında uygulanacak filtredir:

WHERE OD.UPDATE_DTM > DATEADD(hour, -12, CURRENT_TIMESTAMP())
İpucu notuBir SQL tabanlı tablo uygularken, tablo adlarını ${TABLE} gösterimiyle değiştirmeniz önerilir. Bu, örneğin geliştirmeden üretime geçerken ortamdan ortama değişebilen veritabanı ve şema adlarının sabit kodlanmasını önler.

Bu, filtre makrosunu kullanan ve tablo adlarının ${TABLE} gösterimiyle değiştirildiği tam sorgudur:

SELECT O.ORDER_ID, O.CUSTOMER_ID, OD.PRODUCT_ID, OD.QUANTITY, O.AMOUNT , OD.LAST_UPDATE_DTM FROM ${ORDER} O JOIN ${ORDER_DETAIL} OD ON O.ORDER_ID = OD.ORDER_ID {{#QLIK_FUNC_IF Q_RUN_INCREMENTAL}} WHERE OD.UPDATE_DTM > DATEADD(hour, -12, CURRENT_TIMESTAMP() ) {{/QLIK_FUNC_IF}}

Bu, bir ilk yükleme sorgusuyla sonuçlanır:

SELECT O.ORDER_ID, O.CUSTOMER_ID, OD.PRODUCT_ID, OD.QUANTITY, O.AMOUNT , OD.LAST_UPDATE_DTM FROM ${ORDER} O JOIN ${ORDER_DETAIL} OD ON O.ORDER_ID = OD.ORDER_ID

Ve bir artımlı yükleme sorgusu:

SELECT O.ORDER_ID, O.CUSTOMER_ID, OD.PRODUCT_ID, OD.QUANTITY, O.AMOUNT , OD.LAST_UPDATE_DTM FROM ${ORDER} O JOIN ${ORDER_DETAIL} OD ON O.ORDER_ID = OD.ORDER_ID WHERE OD.UPDATE_DTM > DATEADD(hour, -12, CURRENT_TIMESTAMP() )

Kullanım durumu: Hedefteki verileri kullanarak artımlı filtre:

Bu kullanım durumunda, bir sipariş verileri kümesinin özel SQL ile dönüştürülmesi gerekir. Siparişler büyük bir veri kümesi olduğundan, artımlı yüklemenin yalnızca hedef tablodaki verilerden daha yeni olan sipariş ayrıntıları kayıtlarını dikkate almasını sağlamak için artımlı filtrelemeyi dahil etmek istersiniz. Ayrıca bir satırın ilk yükleme tarafından mı yoksa artımlı yükleme tarafından mı işlendiğini işaretlemek istersiniz.

Bilgi notuBu örnekte görebileceğiniz gibi, makrolar sorgunun herhangi bir bölümünü ilk yükleme veya artımlı yükleme için ayarlamak üzere kullanılabilir.

Bu temel sorgudur:

SELECT O.ORDER_ID, O.CUSTOMER_ID, OD.PRODUCT_ID, OD.QUANTITY, O.AMOUNT , OD.LAST_UPDATE_DTM FROM “mydb”.”myStorageTask”.”ORDER” O JOIN “mydb”.”myStorageTask”.”ORDER_DETAIL” OD ON O.ORDER_ID = OD.ORDER_ID

Bu, artımlı çalıştırma sırasında uygulanacak filtredir. “ORDERS_DERIVED” hedef veri kümesinin adıdır.

WHERE OD.UPDATE_DTM > = (SELECT MAX(LAST_UPDATE_DTM) FROM “mydb”.”myTrasformTask”.”ORDERS_DERIVED” )
İpucu notuArtımlı yükleme, bir ${TABLE} gösterimini dönüştürme görevi tarafından oluşturulan hedef nesnelerle de eşleyebilir.

Bu, filtre makrosunu kullanan ve tablo adlarının ${TABLE} gösterimiyle değiştirildiği tam sorgudur. Yükleme ilk ise LOADED_BY INIT olarak, yükleme artımlı ise INCR olarak ayarlanır:

SELECT O.ORDER_ID, O.CUSTOMER_ID, OD.PRODUCT_ID, OD.QUANTITY, O.AMOUNT, OD.LAST_UPDATE_DTM, {{#QLIK_FUNC_IF Q_RUN_INITIAL_LOAD}} ‘INIT’ as LOADED_BY {{/QLIK_FUNC_IF}} {{#QLIK_FUNC_IF Q_RUN_INCREMENTAL}} ‘INCR’ as LOADED_BY {{/QLIK_FUNC_IF}} FROM ${ORDER} O JOIN ${ORDER_DETAIL} OD ON O.ORDER_ID = OD.ORDER_ID {{#QLIK_FUNC_IF Q_RUN_INCREMENTAL}} WHERE OD.UPDATE_DTM >= (SELECT MAX(LAST_UPDATE_DTM) FROM ${TARGET_TABLE} ) {{/QLIK_FUNC_IF}}

Bu, bir ilk yükleme sorgusuyla sonuçlanır:

SELECT O.ORDER_ID, O.CUSTOMER_ID, OD.PRODUCT_ID, OD.QUANTITY, O.AMOUNT, OD.LAST_UPDATE_DTM, ‘INIT’ as LOADED_BY FROM ${ORDER} O JOIN ${ORDER_DETAIL} OD ON O.ORDER_ID = OD.ORDER_ID

Ve bir artımlı yükleme sorgusu:

SELECT O.ORDER_ID, O.CUSTOMER_ID, OD.PRODUCT_ID, OD.QUANTITY, O.AMOUNT, OD.LAST_UPDATE_DTM, ‘INCR’ as LOADED_BY FROM ${ORDER} O JOIN ${ORDER_DETAIL} OD ON O.ORDER_ID = OD.ORDER_ID WHERE OD.UPDATE_DTM >= (SELECT MAX(LAST_UPDATE_DTM) FROM ${TARGET_TABLE} )

Ayarlar

SQL dönüştürmesinin ayarlarını düzenlemek için Ayarlar öğesine tıklayın.

  • Ad alanında hedef veri kümesi için bir ad girin.

    Ayrıca Açıklama'ya daha uzun bir açıklama da girebilirsiniz.

  • Materyalleştirme alanında, dönüştürülen çıktının materyalleştirilip materyalleştirilmeyeceğini seçin. Ayarı veri görevi ayarlarından devralmayı seçebilirsiniz.

    • Açık, tablolar oluşturacak ve ilişkili ELT işlemlerini yönetecektir.

    • Kapalı, dönüşümleri anında gerçekleştiren görünümler oluşturur.

  • Geçmiş Veri Depolaması (2. Tür) alanında, geçmiş verileri saklamak isteyip istemediğinizi seçin. Ayarı veri görevi ayarlarından devralmayı seçebilirsiniz. Bu ayar, Gerçekleşme'nin açık olmasını gerektirir.

  • Artımlı yükleme, makrolar kullanılarak işlenen veri kümesini azaltmak için filtreler veya başka koşullar uygulayarak sorguyu artımlı bir veri yüklemesi için ayarlamanıza olanak tanır. Artımlı yükleme yalnızca veriler tablolar olarak somutlaştırılmışsa kullanılabilir.

    • Artan yük Açık olduğunda

      Görevin ilk yürütülmesi, sorgunun tüm sonuçlarını hedef tablonuza ekleyerek bir ilk yükleme gerçekleştirecektir. Sonraki yürütmeler, filtrelerden veya artımlı işleme için tanımladığınız belirli koşullardan yararlanarak artımlı yüklemeler gerçekleştirecektir. Artımlı yükleme sırasında, görev verileri yalnızca güncelleme veya ekleme olarak işler, silme işlemleri yönetilmez.

    • Artan yük Kapalı olduğunda

      Görevin ilk yürütülmesi, sorgunun tüm sonuçlarını hedef tablonuza ekleyerek bir ilk yükleme gerçekleştirecektir. Sonraki yürütmeler, hedef tablonuzla karşılaştırarak ve yeni, değiştirilmiş veya silinmiş kayıtları işleyerek sorgunun tüm sonuçlarını işleyecektir.

    Bilgi notuSorgu, hedefte bulunması gereken tüm kayıtları seçiyorsa Artımlı yüklemeyi kapalı olarak ayarlayın. Seçilmeyen kayıtlar hedefte silinir.
  • En iyi uygulama

    • Bir SQL dönüştürmesi eklediğinizde, birincil anahtar otomatik olarak tanımlanmaz. Veri kümesi sekmesinde veri kümesine bir anahtar ekleyin.

    • Dönüştürülen çıktıda sütun başlıklarını manuel olarak oluşturmayın.

    • Sorgu her çalıştırıldığında farklı sütunlar döndürebileceğinden SELECT'i * ile kullanmaktan kaçının. Şemada bir değişiklik olduysa, sorguyu buna göre değiştirin ve Tabloyu açıkla işlemini tekrar gerçekleştirin. Ardından sütunları düzenleyebilir ve tabloları ayarlayabilirsiniz.

    Bu sayfa size yardımcı oldu mu?

    Bu sayfa veya içeriği ile ilgili bir sorun; bir yazım hatası, eksik bir adım veya teknik bir hata bulursanız lütfen bize bildirin!