LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Bu blogda, CTE'ler olarak da bilinen bazı yaygın tablo ifadelerini tartışacağız . Karmaşık sorunlarla karşılaşırsanız, bu SQL tablo ifadelerini kullanmak size yardımcı olabilir.

CTE ile karmaşık sorunları çözmek için herhangi bir görevi küçük ve yönetilebilir sorgulara bölebilirsiniz.

Şimdi CTE'nin sorun giderme kodlarında çalışmanızı nasıl daha verimli hale getirebileceğini keşfedelim .

İçindekiler

Ortak SQL Tablo İfadeleri Oluşturmak İçin Sözdizimi 

İlk olarak, “ With ”, ardından CTE İfade adınızı ve ardından “ AS ” yazmanız gerekir .

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Bundan sonra, parantezler arasında herhangi bir sorgu sağlayabilirsiniz. Bu, sanal bir tablo olarak çalışacak, sağlanan ifade adında saklanacaktır.

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Ardından, belirlediğiniz İfade adı aracılığıyla oluşturduğunuz sanal tabloyu kullanarak bir SELECT ifadesi ekleyin.

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Örneğimizde, İfade adı için “ USACusts ” kullanacağız .

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Ve sorgu için bu kodu kullanacağız. 

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Bu sorgu sanal bir tablo oluşturacaktır. Ait oldukları ülkenin " ABD " olduğu müşteri kimliğine göre gruplandırılmış toplam veya birleştirilmiş bir tutar gösterecektir . Veriler, Sales.Customers tablosundan çıkarılacaktır .

custid ve Agg_Amount olan iki sütun görünecektir . USACusts tablosunun fiziksel bir tablo değil , yalnızca sanal bir tablo olduğunu unutmayın . Bu, veritabanımızda görünmeyeceği anlamına gelir.

Sorgudan sonra bir SELECT ifadesi ekleyebiliriz .

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Bu ifade, USACusts tablosundan 1000'den büyük olan tüm Agg_Amount'u seçecektir .

Çoklu Ortak SQL Tablo İfadeleri 

Birden çok CTE, kodunuzdaki karmaşık hataları daha küçük parçalara ayırarak çözmenize yardımcı olabilir. Ek olarak, istediğiniz kadar CTE tanımlayabilirsiniz . Aşağıda birden çok CTE örneği verilmiştir .

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Bu örnek için, C1 olan ilk CTE'ye sahibiz . Oradan YEAR(sipariştarihi) seçtik ve Sales.Orders tablosundan orderyear ve custid olmak üzere 2 sütun oluşturduk .

C2 adlı ikinci CTE için orderyear'ı seçtik ve COUNT komutunu kullanarak custid sayısını topladık . Sonra buna C1'den numcusts adını verdik . Yalnızca 2015'ten büyük olan sipariş yılını seçmek için C2'de bir WHERE koşulu da eklenmiştir . Sonra onları orderyear'a göre gruplandırdık .

Daha sonra C2'den orderyear ve numcusts'u seçtik . Ardından, yalnızca 500'den büyük müşteri sayısını seçmek için bir WHERE koşulu ekledik .

Özetlemek gerekirse bu kod, sipariş yılı 2015'ten büyük olan müşterileri seçmek ve sipariş yılı koşuluna göre sadece 500'den fazla müşteri seçmek için kullanılır .

Karmaşık Kodları Çözmek İçin Birden Çok CTE Kullanma

Ardından, büyük bir veri kümesinde sorun gidermede CTE'lerin kullanımını daha fazla vurgulamak için daha fazla örnek göstereceğim . İşte birden çok CTE'ye başka bir örnek .

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Lütfen CTE'leri istediğiniz gibi adlandırabileceğinizi unutmayın , ancak bu blog için, örneklerimizde bunları nasıl kullandığımızı kolayca belirlemek ve anlamak için C1 , C2 , C3 vb . kullanıyoruz.

Örneğe geri dönecek olursak, Sales.SalesOrderDetails tablosundan sadece sipariş miktarı 5'ten büyük olan satışları seçmek için C1'i oluşturduk .

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Daha sonra C2'de , C1'de sakladığımız verileri Product.ID'ye göre ürüne katılmak için kullandık ve bunları ürün adına (p.Name) ve ürün rengine (p.Color) göre gruplandırdık .

C1'de koşul bildirdiğimiz için , sipariş miktarının (OrderQty) 5'ten büyük olduğu siparişlerde sadece ürün adını ve ürün rengini C2'de gruplandıracağız .

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Bundan sonra, sipariş miktarı 1000'den büyük olan C2'deki tüm verileri seçmek için bir komut kullanacağız .

Sorun giderme amacıyla, doğru verileri gösterip göstermediğini kontrol etmek için oluşturduğunuz CTE'lerin her birini seçmeniz yeterlidir . Aşağıdaki örneklere bakın.

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

C1 için , Sales.SalesOrderDetail tablosundaki tüm verileri 5'ten büyük bir sipariş miktarıyla gösteriyor .

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Ardından C2, C1'den ürün adına ve renge göre gruplandırılmış sipariş miktarının bir çıktısını gösterir . C2'de orderqty sütununu görebiliriz ama aslında C2'de buna sahip değiliz çünkü bu yalnızca C1'den oluşturduğumuz hesaplanmış bir sütun . Buradan, orderqty sütunundaki herhangi bir koşulu kullanmaya başlayabilir ve sorun giderme işlemini gerçekleştirebiliriz.

Böylece, birden çok CTE'nin karmaşık kodlardaki hataları CTE'lerde depolayarak çözmemize nasıl yardımcı olabileceğini görebilir ve gerçek koda zarar vermeden sorun gidermeye başlayabilirsiniz.

CTE'leri Vaka Bildirimi ile Kullanma

Karmaşık kodlarda sorun gidermede  birden çok CTE'yi nasıl kullanabileceğimizi göstermek için aynı bağlamda başka bir örnek verelim .

Bu durumda, C2'den birleştirilmiş orderqty miktarına dayalı sonuçlarla bir Ürün Kategorisi sütunu oluşturacak bir CASE deyimi kullanacağız .

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Daha önce de belirtildiği gibi, ilk CTE'de ve Ürün Kategorisinde sipariş miktarımız yoktu , ancak hesaplamak ve farklı hesaplamalar yapmak için ara tabloları kullandık.

Bir sonraki örnekte, önceki örnekte oluşturduğumuz Ürün Kategorisine göre birleştirilmiş bir miktar oluşturacağız . Ancak bunu yapmak için, Ürün Kategorisi için CASE deyimini üçüncü CTE olan C3'e koyacağız .

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Devam etmeden önce C3'ün altına “ SELECT * FROM C3 ” ekleyerek C3'ün çıktısını kontrol edelim .

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

C3'te ProductName , Color , orderqty ve Product Category sütunlarını görebiliriz . Buradan, Ürün Kategorisine göre toplamaya başlayabiliriz . Bunu aşağıdaki C3 komutunu kullanarak yapalım .

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Aşağıdaki örnek, yukarıdaki komutu kullanarak birleştirilmiş bir tutar oluşturduktan sonraki sonuçtur.

LuckyTemplates Kullanıcıları İçin Yaygın SQL Tablo İfadeleri

Başlangıçta, Ürün Kategorisi ve sipariş miktarı sütunlarımız yoktu , ancak birden çok CTE kullanarak bu sütunlara dayalı olarak örnek çıktılar üretebiliyoruz .

Bu noktada, kodlarımızla daha verimli çalışmak için CTE'lerin yardımıyla her şeyi yapabileceğimizi görebilirsiniz .


IN, NOT IN, LIKE ve NOT LIKE Kullanarak SQL'de LuckyTemplates Kullanıcı Filtresi İçin SQL Temp Tabloları ve Görünümleri
OFFSET ve FETCH Kullanarak SQL Veri Çıkarma

Çözüm

Bu öğreticide, Ortak SQL Tablo İfadeleri oluştururken uygun sözdizimini ve küçük veri parçalarını ayırarak ve bunları belirli bir CTE içinde depolayarak karmaşık kodlarda sorun gidermede birden çok CTE'yi nasıl kullanacağınızı öğrendiniz .

Bunu öğrenerek, artık kodlarınızda daha verimli bir şekilde hata ayıklama yeteneğine sahipsiniz. CTE için herhangi bir isim kullanabileceğinizi ve oluşturulmadıkça herhangi bir CTE'yi kullanamayacağınızı veya çağıramayacağınızı unutmayın. CTE'ye aşina olduğunuzda , kendinizi orta düzey bir SQL kullanıcısı olarak düşünebilirsiniz .

Bu konu ve diğer ilgili içerik hakkında daha fazla bilgi edinmek isterseniz, aşağıdaki ilgili bağlantıların listesine kesinlikle göz atabilirsiniz.

Herşey gönlünce olsun,

Hafız

Leave a Comment

Excel Hücrelerini Metne Sığdırma: 4 Kolay Çözüm

Excel Hücrelerini Metne Sığdırma: 4 Kolay Çözüm

Excel hücrelerini metne sığdırmak için güncel bilgileri ve 4 kolay çözümü keşfedin.

Bir Excel Dosyasının Boyutu Nasıl Küçültülür – 6 Etkili Yöntem

Bir Excel Dosyasının Boyutu Nasıl Küçültülür – 6 Etkili Yöntem

Bir Excel Dosyasının Boyutunu Küçültmek için 6 Etkili Yöntem. Hızlı ve kolay yöntemler ile verilerinizi kaybetmeden yer açın.

Pythonda Self Nedir: Gerçek Dünyadan Örnekler

Pythonda Self Nedir: Gerçek Dünyadan Örnekler

Python'da Self Nedir: Gerçek Dünyadan Örnekler

Rde Bir RDS Dosyası Nasıl Kaydedilir ve Yüklenir

Rde Bir RDS Dosyası Nasıl Kaydedilir ve Yüklenir

R'de bir .rds dosyasındaki nesneleri nasıl kaydedeceğinizi ve yükleyeceğinizi öğreneceksiniz. Bu blog aynı zamanda R'den LuckyTemplates'a nesnelerin nasıl içe aktarılacağını da ele alacaktır.

İlk N İş Günü Tekrar Ziyaret Edildi – Bir DAX Kodlama Dili Çözümü

İlk N İş Günü Tekrar Ziyaret Edildi – Bir DAX Kodlama Dili Çözümü

Bu DAX kodlama dili eğitiminde, GENERATE işlevinin nasıl kullanılacağını ve bir ölçü başlığının dinamik olarak nasıl değiştirileceğini öğrenin.

LuckyTemplatesda Çok İş Parçacıklı Dinamik Görsel Tekniği Kullanarak Öngörüleri Sergileyin

LuckyTemplatesda Çok İş Parçacıklı Dinamik Görsel Tekniği Kullanarak Öngörüleri Sergileyin

Bu eğitici, raporlarınızdaki dinamik veri görselleştirmelerinden içgörüler oluşturmak için Çok Kanallı Dinamik Görseller tekniğinin nasıl kullanılacağını kapsayacaktır.

LuckyTemplatesda İçeriği Filtrelemeye Giriş

LuckyTemplatesda İçeriği Filtrelemeye Giriş

Bu yazıda, filtre bağlamından geçeceğim. Filtre bağlamı, herhangi bir LuckyTemplates kullanıcısının başlangıçta öğrenmesi gereken en önemli konulardan biridir.

LuckyTemplates Çevrimiçi Hizmetindeki Uygulamaları Kullanmak İçin En İyi İpuçları

LuckyTemplates Çevrimiçi Hizmetindeki Uygulamaları Kullanmak İçin En İyi İpuçları

LuckyTemplates Apps çevrimiçi hizmetinin çeşitli kaynaklardan oluşturulan farklı raporların ve içgörülerin yönetilmesine nasıl yardımcı olabileceğini göstermek istiyorum.

Fazla Mesai Kâr Marjı Değişikliklerini Analiz Edin - LuckyTemplates ve DAX ile Analitik

Fazla Mesai Kâr Marjı Değişikliklerini Analiz Edin - LuckyTemplates ve DAX ile Analitik

LuckyTemplates'da ölçü dallandırma ve DAX formüllerini birleştirme gibi teknikleri kullanarak kâr marjı değişikliklerinizi nasıl hesaplayacağınızı öğrenin.

DAX Studioda Veri Önbellekleri İçin Materyalleştirme Fikirleri

DAX Studioda Veri Önbellekleri İçin Materyalleştirme Fikirleri

Bu öğreticide, veri önbelleklerini gerçekleştirme fikirleri ve bunların DAX'ın sonuç sağlama performansını nasıl etkilediği tartışılacaktır.