Kategori: sql server

Unpivot İşlemi (Power Bi Veri Modelleme Hazırlığı)

Özellikle excel üzerinde yapılan tablolarda verilerin sütunlarda yer aldığı görülür. Örnek vermemiz gerekirse yılın ayları yer alan bir bütçe tablosunda sütunlara ayların isimlerinin verildiğini görebiliriz. Yine yılın çeyrekleri için de bu tarz tabloları çok görürüz. Oysa veri analizinde veya veri ambarı projelerinde normalizasyon için bize satır bazlı veriler gerekmektedir. Sütun bazlı oluşturulan bu tabloları veri […]

Sql Common Table Expressions (CTE) Kullanımı

Tablolar üzerinde karmaşık sorgular yaparken, Common Table Expressions (CTE) kullanırız. Cte, sorguların okunabilirliğini ve bakımını kolaylaştırırken performans optimizasyonu için de önemlidir. Bir kere derlenen kodlar sorgunun istenilen yerinde defalarca kullanılabilir. Aslında bu yönden geçici tablolara benziyor diyebiliriz (temp) ama özellikle ram tüketimi açısından cte kullanmanın daha iyi olduğunu söyleyebiliriz. Çünkü geçici tablolar sorgu bitinceye kadar […]

Veri Analizinde Dax ve Sql Tercihi

SQL, bilindiği üzere ilişkisel veritabanları üzerinde hüküm süren bir dil olarak karşımıza çıkar. Tablolar arasında dolaşarak veri almak, ekleme, güncelleme ve silme gibi işlemleri gerçekleştirmek için kullanılır. Büyük veri setlerini işlemek ve veritabanları arasında bağlantılar kurmak için idealdir. Öte yandan, DAX daha spesifik bir alana odaklanmıştır. Microsoft’un Power BI, Excel ve SQL Server Analysis Services […]

SQL Soft Delete İşlemi

Normalde bir sql tablosunda veri sildiğinizde bu veriye ulaşmazsınız ve geri almak için gerekli ayarlar(recovery model; full, bulk logged) yapıldıysa bile bu biraz uğraştırabilir. Bu yüzden veri kaybından korunmak için çeşitli yöntemler kullanılır. Bu yöntemlerden biri, özellikle hassas veriler içeren tablolarda veri kaybından korunmak için kullanılan soft delete(table düzeyinde) işlemini açıklamaya çalışacağım. Mevcut tablomuza “isDelete” […]

SQL iki tarih arasındaki farkın bulunması

Aşağıdaki linkte nasıl yükleneceğinden bahsettiğimiz veritabanımız üzerinde [Purchasing].[PurchaseOrderHeader] tablosunda işlemlerimiz gerçekleştireceğiz. Örnek veritabanı yüklemesi http://www.blog.saydogmus.com/2022/03/30/157/ use AdventureWorks2019 /* hangi veritabanını kullanacağız */ select * from Purchasing.PurchaseOrderHeader /* tablomuzu çağırıyoruz */ İki tarih arasındaki farkı bulmak için Datediff fonksiyonunu kullanıyoruz. Ay, gün, saat hangi tip istiyorsak bunu belirtiyoruz. SELECT DATEDIFF(day, OrderDate, ShipDate) from Purchasing.PurchaseOrderHeader /* gün […]

sql örnek veritabanı yüklemesi

Eğer hazır tablolarınız yoksa MSSQL Server’da kodlama denemeleri yapmak için tablolara oluşturmanız ve sürekli güncellemeler yapmak gerekebilir bu yüzden hazır tabloları kullanıyoruz. Hazır tabloları içeren veritabanlarından popüler olan AdventureWorks nasıl yüklenir birlikte bakalım. Öncelikle linkten AdventureWorks2019 dosyasını indiriyoruz. https://docs.microsoft.com/en-us/sql/samples/adventureworks-install-configure?view=sql-server-ver15&tabs=ssms Databases kısmına sağ tıklayıp restore db tıklayarak detayda bak dosyamızı seçerek OK deyip ilerliyoruz. İşlem tamamlandığında […]

sql exists kullanımı

If else yapısına sahip olsa da bazen tek sorguda kontrol yapıp sorgulama yapmak isteyebilirsiniz. Böyle durumlarda exists fonksiyonu imdadınıza yetişecektir. Nasıl kullanılır inceleyelim. Öncelikle test veritabanı yüklü değilse, linkte tarif edildiği gibi yükleyebilirsiniz. http://www.blog.saydogmus.com/2022/03/30/157/ Sonrasında örnek veritabanından bir tablo seçiyoruz. Benim tercihim [AdventureWorks2019].[Person].[Person] tablosu. Person tablosunda bir isim aratttıralım eğer varsa sorguyu çalıştır diyelim. Öncelikle […]

sql geçici tablolar

Sql server’da kod yazarken bazı kısımlarda büyük bir karmaşa içinde kalabilirsiniz. Bu noktada bol bol view’lar, yeni tablolar oluşturma isteği gelebilir. Sürekli yeni tablolar, view’lar bir süre sonra bir sürü gereksiz tabloya ve tekrar eden verilere sahip olmanıza yol açacacaktır. Böyle durumlarda geçici olarak işimizi çözen adı üzerinde geçici tabloları tercih etmeliyiz. İlişkisel veritabanları(mssql, postgresql) […]

sql server komut türleri

SQL komutları direktiflerdir. Veri tabanı ile iletişim kurmak için kullanılır. Ayrıca belirli görevleri, işlevleri ve veri sorgularını gerçekleştirmek için kullanılır. SQL bir tablo oluşturmak, tablolara veri eklemek, tabloyu silmek, tabloyu değiştirmek, kullanıcılar için izin ayarlamak gibi çeşitli işlemleri gerçekleştirebilir. 1. Data definition language (DDL) *DDL, tablonun yapısını, tablo oluşturma, tabloyu silme, tabloyu değiştirme vb. Gibi […]

sql server mdf, ndf ve ldf dosyaları

Sql server ile ilgili olanların surekli duydugu mdf, ndf, ldf uzantılı dosyalar sırasıyla; birincil veri dosyası, ikincil veri dosyası ve günlük dosyalardır. sql sever da hic bir zaman veri ve gunluk dosyalari ayni dosyada saklanmaz. Fakat hepsi ayni serverda bulunur.  Birincil veri dosyası Birincil veri dosyası, veritabanının başlangıç noktasıdır. Veritabanındaki diğer dosyaları gösterir. Bu nedenle, her […]

Back To Top