SQL Server’da Şehir Adına Göre Telefon Alan Kodunu Getiren Fonksiyon
Herkese merhaba,
Bu yazıda SQL Server’da şehir adına göre telefon alan kodunu getiren fonksiyon hakkında bilgi vereceğim.
SQL Server’da bazı durumlarda şehir adına göre telefon kodunu getirmek isteyebilirsiniz.
Konu ile ilgili Türkçe makale ya da yazı bulamadığım için fonksiyon oluşturmaya karar verdim. Bu konu hakkında yazılmış olan ilk makaledir. Fonksiyon daha da geliştirilebilir.
Aşağıdaki fonksiyon yardımıyla bu işlemi rahatlıkla yapabilirsiniz.
--Fonksiyonun oluşturulması CREATE FUNCTION IleGoreAlanKoduBulma ( @SehirAd VARCHAR(50) ) RETURNS INT AS BEGIN SET @SehirAd = UPPER(SUBSTRING(@SehirAd, 1, 1)) + LOWER(SUBSTRING(@SehirAd, 2, LEN(@SehirAd))); DECLARE @AlanKodu INT; IF @SehirAd = 'Adana' BEGIN SET @AlanKodu = 322; END; ELSE IF @SehirAd = 'Adıyaman' BEGIN SET @AlanKodu = 416; END; ELSE IF @SehirAd = 'Afyonkarahisar' BEGIN SET @AlanKodu = 272; END; ELSE IF @SehirAd = 'Ağrı' BEGIN SET @AlanKodu = 472; END; ELSE IF @SehirAd = 'Aksaray' BEGIN SET @AlanKodu = 382; END; ELSE IF @SehirAd = 'Amasya' BEGIN SET @AlanKodu = 358; END; ELSE IF @SehirAd = 'Ankara' BEGIN SET @AlanKodu = 312; END; ELSE IF @SehirAd = 'Antalya' BEGIN SET @AlanKodu = 242; END; ELSE IF @SehirAd = 'Ardahan' BEGIN SET @AlanKodu = 478; END; ELSE IF @SehirAd = 'Artvin' BEGIN SET @AlanKodu = 466; END; ELSE IF @SehirAd = 'Aydın' BEGIN SET @AlanKodu = 256; END; ELSE IF @SehirAd = 'Balıkesir' BEGIN SET @AlanKodu = 266; END; ELSE IF @SehirAd = 'Bartın' BEGIN SET @AlanKodu = 378; END; ELSE IF @SehirAd = 'Batman' BEGIN SET @AlanKodu = 488; END; ELSE IF @SehirAd = 'Bayburt' BEGIN SET @AlanKodu = 458; END; ELSE IF @SehirAd = 'Bilecik' BEGIN SET @AlanKodu = 228; END; ELSE IF @SehirAd = 'Bingöl' BEGIN SET @AlanKodu = 426; END; ELSE IF @SehirAd = 'Bitlis' BEGIN SET @AlanKodu = 434; END; ELSE IF @SehirAd = 'Bolu' BEGIN SET @AlanKodu = 374; END; ELSE IF @SehirAd = 'Burdur' BEGIN SET @AlanKodu = 248; END; ELSE IF @SehirAd = 'Bursa' BEGIN SET @AlanKodu = 224; END; ELSE IF @SehirAd = 'Çanakkale' BEGIN SET @AlanKodu = 286; END; ELSE IF @SehirAd = 'Çankırı' BEGIN SET @AlanKodu = 376; END; ELSE IF @SehirAd = 'Çorum' BEGIN SET @AlanKodu = 364; END; ELSE IF @SehirAd = 'Denizli' BEGIN SET @AlanKodu = 258; END; ELSE IF @SehirAd = 'Diyarbakır' BEGIN SET @AlanKodu = 412; END; ELSE IF @SehirAd = 'Düzce' BEGIN SET @AlanKodu = 380; END; ELSE IF @SehirAd = 'Edirne' BEGIN SET @AlanKodu = 284; END; ELSE IF @SehirAd = 'Elazığ' BEGIN SET @AlanKodu = 424; END; ELSE IF @SehirAd = 'Erzincan' BEGIN SET @AlanKodu = 446; END; ELSE IF @SehirAd = 'Erzurum' BEGIN SET @AlanKodu = 442; END; ELSE IF @SehirAd = 'Eskişehir' BEGIN SET @AlanKodu = 222; END; ELSE IF @SehirAd = 'Gaziantep' BEGIN SET @AlanKodu = 342; END; ELSE IF @SehirAd = 'Giresun' BEGIN SET @AlanKodu = 454; END; ELSE IF @SehirAd = 'Gümüşhane' BEGIN SET @AlanKodu = 456; END; ELSE IF @SehirAd = 'Hakkari' BEGIN SET @AlanKodu = 438; END; ELSE IF @SehirAd = 'Hatay' BEGIN SET @AlanKodu = 326; END; ELSE IF @SehirAd = 'Iğdır' BEGIN SET @AlanKodu = 476; END; ELSE IF @SehirAd = 'Isparta' BEGIN SET @AlanKodu = 246; END; ELSE IF @SehirAd = 'İstanbul-Avrupa' BEGIN SET @AlanKodu = 212; END; ELSE IF @SehirAd = 'İstanbul-Anadolu' BEGIN SET @AlanKodu = 216; END; ELSE IF @SehirAd = 'İzmir' BEGIN SET @AlanKodu = 232; END; ELSE IF @SehirAd = 'Kahramanmaraş' BEGIN SET @AlanKodu = 344; END; ELSE IF @SehirAd = 'Karabük' BEGIN SET @AlanKodu = 370; END; ELSE IF @SehirAd = 'Karaman' BEGIN SET @AlanKodu = 338; END; ELSE IF @SehirAd = 'Kars' BEGIN SET @AlanKodu = 474; END; ELSE IF @SehirAd = 'Kastamonu' BEGIN SET @AlanKodu = 366; END; ELSE IF @SehirAd = 'Kayseri' BEGIN SET @AlanKodu = 352; END; ELSE IF @SehirAd = 'Kırıkkale' BEGIN SET @AlanKodu = 318; END; ELSE IF @SehirAd = 'Kırklareli' BEGIN SET @AlanKodu = 288; END; ELSE IF @SehirAd = 'Kırşehir' BEGIN SET @AlanKodu = 386; END; ELSE IF @SehirAd = 'Kilis' BEGIN SET @AlanKodu = 348; END; ELSE IF @SehirAd = 'Kocaeli' BEGIN SET @AlanKodu = 262; END; ELSE IF @SehirAd = 'Konya' BEGIN SET @AlanKodu = 332; END; ELSE IF @SehirAd = 'Kütahya' BEGIN SET @AlanKodu = 274; END; ELSE IF @SehirAd = 'Malatya' BEGIN SET @AlanKodu = 422; END; ELSE IF @SehirAd = 'Manisa' BEGIN SET @AlanKodu = 236; END; ELSE IF @SehirAd = 'Mardin' BEGIN SET @AlanKodu = 482; END; ELSE IF @SehirAd = 'Mersin' BEGIN SET @AlanKodu = 324; END; ELSE IF @SehirAd = 'Muğla' BEGIN SET @AlanKodu = 252; END; ELSE IF @SehirAd = 'Muş' BEGIN SET @AlanKodu = 436; END; ELSE IF @SehirAd = 'Nevşehir' BEGIN SET @AlanKodu = 384; END; ELSE IF @SehirAd = 'Niğde' BEGIN SET @AlanKodu = 388; END; ELSE IF @SehirAd = 'Ordu' BEGIN SET @AlanKodu = 452; END; ELSE IF @SehirAd = 'Osmaniye' BEGIN SET @AlanKodu = 328; END; ELSE IF @SehirAd = 'Rize' BEGIN SET @AlanKodu = 464; END; ELSE IF @SehirAd = 'Sakarya' BEGIN SET @AlanKodu = 264; END; ELSE IF @SehirAd = 'Samsun' BEGIN SET @AlanKodu = 362; END; ELSE IF @SehirAd = 'Siirt' BEGIN SET @AlanKodu = 484; END; ELSE IF @SehirAd = 'Sinop' BEGIN SET @AlanKodu = 368; END; ELSE IF @SehirAd = 'Sivas' BEGIN SET @AlanKodu = 346; END; ELSE IF @SehirAd = 'Şanlıurfa' BEGIN SET @AlanKodu = 414; END; ELSE IF @SehirAd = 'Şırnak' BEGIN SET @AlanKodu = 486; END; ELSE IF @SehirAd = 'Tekirdağ' BEGIN SET @AlanKodu = 282; END; ELSE IF @SehirAd = 'Tokat' BEGIN SET @AlanKodu = 356; END; ELSE IF @SehirAd = 'Trabzon' BEGIN SET @AlanKodu = 462; END; ELSE IF @SehirAd = 'Tunceli' BEGIN SET @AlanKodu = 428; END; ELSE IF @SehirAd = 'Uşak' BEGIN SET @AlanKodu = 276; END; ELSE IF @SehirAd = 'Van' BEGIN SET @AlanKodu = 432; END; ELSE IF @SehirAd = 'Yalova' BEGIN SET @AlanKodu = 226; END; ELSE IF @SehirAd = 'Yozgat' BEGIN SET @AlanKodu = 354; END; ELSE IF @SehirAd = 'Zonguldak' BEGIN SET @AlanKodu = 372; END; ELSE BEGIN SET @AlanKodu = 0; END; RETURN @AlanKodu; END; GO --Kullanımı SELECT dbo.IleGoreAlanKoduBulma('BURSA'); SELECT dbo.IleGoreAlanKoduBulma('bursa');
Fonksiyonu oluşturup çalıştırdığınızda aşağıdaki gibi bir sonuç göreceksiniz.
Görüldüğü üzere şehir adına göre telefon kodu getirilmiş oldu.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.