MS SQL Eğitimlerinde SUBSTRING metoduyla devam ediyoruz.
Bazen veritabanı kolonlarındaki bilgileri belli bir kuralla parçalayıp istediğimiz kısımları almak isteriz. İşte bunları yapmak için kullanabileceğimiz bir metot var.
Kullanım
SELECT SUBSTRING(ALAN_ADI, BAŞLANGIÇ_KARAKTERİ,ALINACAK_KARAKTER_SAYISI) FROM TABLO_ADI
Şimdi canlı veritabanımız olan XENONBOX üzerinde çalışmamızı yapalım.
Öncelikle Product tablomuza bir Select atalım.
SELECT * FROM Product
1 | Chai | 1 | 18.00 | 10 boxes x 20 bags | 0 |
2 | Chang | 1 | 19.00 | 24 – 12 oz bottles | 0 |
3 | Aniseed Syrup | 1 | 10.00 | 12 – 550 ml bottles | 0 |
4 | Chef Anton’s Cajun Seasoning | 2 | 22.00 | 48 – 6 oz jars | 0 |
5 | Chef Anton’s Gumbo Mix | 2 | 21.35 | 36 boxes | 1 |
6 | Grandma’s Boysenberry Spread | 3 | 25.00 | 12 – 8 oz jars | 0 |
7 | Uncle Bob’s Organic Dried Pears | 3 | 30.00 | 12 – 1 lb pkgs. | 0 |
8 | Northwoods Cranberry Sauce | 3 | 40.00 | 12 – 12 oz jars | 0 |
9 | Mishi Kobe Niku | 4 | 97.00 | 18 – 500 g pkgs. | 1 |
10 | Ikura | 4 | 31.00 | 12 – 200 ml jars | 0 |
İkinci sıra ProductName alanı.
Şimdi bu kolondaki verilerin 3. karakterden başlayıp 4 karakter alacağımız SQL sorgusunu yazalım.
SELECT ProductName, SUBSTRING(ProductName,3,4) FROM Product
SELECT ProductName, SUBSTRING(ProductName,3,4) AS [PARÇALI ÜRÜN İSMİ] FROM Product
Alice Mutton | ice |
Aniseed Syrup | isee |
Boston Crab Meat | ston |
Camembert Pierrot | memb |
Carnarvon Tigers | rnar |
Chai | ai |
Chang | ang |
Chartreuse verte | artr |
Chef Anton’s Cajun Seasoning | ef A |
Chef Anton’s Gumbo Mix | ef A |
Kısaca anlatacak olursak. Tek bir kaydı ele alalım.
2. sıradaki kayıt Aniseed Syrup ürününü ele alalım.
Burada 3. karakterden itibaren 4 karakter almasını söylüyoruz. Ve saymaya 1 den başladığını unutmuyoruz. 3. karekter i ve sonrasında alınacak 4 karakter i,s,e,e karakterleri. isee olarak kolona yazıyor ve istediğim işlemi yaptırmış oluyorum.
Bu konumuzda bu kadardı bir sonraki yazımda görüşmek üzere.