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.

SQL Server’da Şehir Adına Göre Telefon Alan Kodunu Getiren Fonksiyon

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.

396 Kez Okundu

Yavuz Selim Kart

Yazılım ve veri tabanında bildiklerimi anlatmaya gayret ediyorum. Halen birçok programlama dili üzerinde araştırmalar yaparak kendimi geliştiriyorum. Bunlar haricinde Grafik Tasarım ve Wordpress konularına da ilgim bulunmakta. SEO ve Sosyal medya yönetimleri hakkında da bilgim mevcuttur. Kısaca çok çalışmayı seven azimli biriyim.

You may also like...

Yazı kopyalamak yasaktır!