Halâ Tasarım Aşamasında !
|
T-SQL ile Sonuçlarda Sorgulamak
Şu SQL ne menem bir dil yeni yeni kavramaya başlıyorum... Bazen öyle durumlarla karşılaşıyoruz ki içinden çıkmak için tam anlamıyla destan yazmak gerekebiliyor. Bu "yazımda!" size T-SQL'in WITH komutununun kullanımına yönelik bir iki ufak örnek göstereceğim; WITH ile çözeceğiniz sorunları başka yöntemlerle de çözebileceğinizi unutmamanız gerekir, burada amacımız aynı sorunlara farklı yaklaşımlar sergilemekten başka bir şey değil. Gelelim sadede; WITH, temelde geçiçi bir tablonun sonuç kümesini temsili bir tanımlama ile devamındaki SQL cümlesinde kullanmanıza olanak verir. Bu sayede çok karmaşık olan SQL cümlelerinizi daha okunaklı hale getirir ve olayı basite indirgersiniz. Böylece SQL kodunuzu okuyan diğerleri de olaya çabuk uyum sağlarlar. "Neden Temp tablo kullanmıyoruz ki?" gibi bir şey sorulabilir; WITH'in kullanımı temp tablodan daha kolaydır çünkü temp tabloyu kullanmak için önce onu tanımlamak, sonra da değerleri o tabloya aktarmak gerekir, bir sürü külfet... Halbuki WITH öyle değildir. WITH'i yazarken en başta bir isim verirsiniz ve sonrasında karmaşık SQL cümlenizi yazarsınız o kadar... Diyelim ki bir "Kişiler" tablonuz var ve bu tabloda müşterilerinizin kimlik ve ticaret sicil kayıtlarını tutuyorsunuz. Üstelik bu tablonuzdaki bazı alanları diğer tablolarda referans olarak kullanıyor ve muhasebe kayıtlarınızı da bu referanslara atıflar yaparak tutuyorsunuz...
Basit bir örnekle işe başlayalım;Bu örnekler serisinde önce basit 2 sorgu oluşturacağız, sonra bunları birleştirip tek bir SQL sorgusu haline getireceğiz. Ardından bu tek sorguyu WITH ile temsili bir sabite atayacağız ve en sonunda da o sabiti kullanarak daha karmaşık sorgular yazmaya çalışacağız... İlk sorgumuz bize, adının ilk harfi 'A','E','I','İ','O','Ö','U','Ü' işaretleri ile başlayan bireylerin listesini versin; Görüldüğü gibi, yukarıdaki kodumuzda cezbedici hiç bir unsur yok... Olabildiğinde sade bir yapısı var. Şimdi gelelim ikinci sorgumuza. Olayı bu sefer biraz daha çetrefellendirelim ve ünvanının soldan 3. harfinin 'A','I','U','Ö' işaretlerinden birisi olan "firmaları" listeleyelim; Bu kodda da cezbedici herhangi bir unsur yok ama dikkat ederseniz çektiğimiz alan adları aynı ve farklar sadece koşulu belirttiğimiz kısımda. Şimdi bu iki sorguyu kullanarak bileşik bir sorgu cümlesi kuralım; Yaptığımız tek şey, iki sorgunun arasına bir "UNION" ifadesi koymak oldu. İşte WITH, bundan sonra eğer yeni bir koşul eklememiz gerekiyor ve bu bütünlüğü bozmak istemiyorsak devreye giriyor. Şimdi bunu biraz daha zorlaştıralım ve her ikisi için de geçerli olacak yeni bir koşul belirleyelim. Bu öyle bir koşul olsun ki her iki sorgunun da sadece bir kısmını etkileyecek cinsten olsun, veya ortak bir kıstası belirtsin... İşte WITH'i ilk kez kullanıyoruz; Hepsi bu, ama burada bitmiyor. WITH'den faydalanmayacaksak onu da kullanmamızın bir anlamı yok elbet. Gelin bu örneği biraz daha geliştirelim ve her iki sorgu için de ortak başka bir kriter daha belirtelim; Mesela;
bu liste uzar gider, bir yerde dur demek lazım, koda gelince o da aşağıdaki gibi olmalı Bu örnekte kullandığımız örnek tabloyu oluşturmak için şu kodu kullanabilirsiniz;
HatırlatmaBu sayfa test aşamasında olup deneysel veriler içermektedir. Cıvıltılar
Kategori BulutuAlgoritma Delphi Dialog Fonksiyon Kod Örneği Login Metin İşleme Mssql Parse Pascal Programlama Projeler Select Sql T-Sql Upeditbutton Uplogindialog Uplookupdialog Wıth Zaman Ölçme Öneri Şiir Etikettekiler
Bağlantılar
Sayfa Seç1 Toplam 1 sayfa var. Siz 1. sayfadasınız ve 1 kayıt içinden 1 ile 1 arasını görmektesiniz |