tblSehirler Tablosu
CREATE TABLE tblSehirler ( sehir_ID INT PRIMARY KEY NOT NULL IDENTITY(1,1) , sehir_adi VARCHAR(255) ) INSERT INTO tblSehirler (sehir_adi) VALUES ('Adana') INSERT INTO tblSehirler (sehir_adi) VALUES ('Adıyaman') INSERT INTO tblSehirler (sehir_adi) VALUES ('Afyon') INSERT INTO tblSehirler (sehir_adi) VALUES ('Ağrı') INSERT INTO tblSehirler (sehir_adi) VALUES ('Amasya') INSERT INTO tblSehirler (sehir_adi) VALUES ('Ankara')
Oluşan şehirler tablosunun görselini paylaşalım.
Şehirler Tablosu
İlçeleri de oluşturalım.
tblIlceler Tablosu
CREATE TABLE tblIlceler ( ilce_ID INT PRIMARY KEY NOT NULL IDENTITY(1,1) , sehir_ID INT, ilce_adi VARCHAR(255) ) INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (1, 'Seyhan') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (1, 'Ceyhan') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (1, 'Yüreğir') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (1, 'Sarıçam') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (1, 'Çukurova') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (2, 'Kahta') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (2, 'Gölbaşı') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (2, 'Gerger') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (3, 'Başmakçı') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (3, 'Bayat') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (3, 'Bolvadin') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (3, 'Dinar') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (4, 'Diyadin') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (4, 'Doğubayazıt') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (4, 'Patnos') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (5, 'Göynücek') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (5, 'Gümüşhacıköy') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (5, 'Hamamözü') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (6, 'Akyurt') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (6, 'Altındağ') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (6, 'Balâ') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (6, 'Keçiören') INSERT INTO tblIlceler (sehir_ID, ilce_adi) VALUES (6, 'Çankaya')
Oluşan ilçeler tablosunun görselini paylaşalım.
İlçeler Tablosu
Şimdi ise her şehire karşılık gelen tüm ilçeleri her şehirden tek kayıt gelecek şekilde yazalım.
STUFF Sorgusu
SELECT A.sehir_ID, A.sehir_adi AS Sehir, STUFF ( ( SELECT ', ' + ilce_adi FROM tblIlceler AS B WHERE A.sehir_ID = B.sehir_ID FOR XML PATH('') ), 1, 1, '' ) AS Ilceler FROM tblSehirler AS A
Kodlarımızın sonucuna ait görseli paylaşalım.