| 
      
        |  SİTE 
            İÇİ ARAMA |  
        |  |  
      
        |  Blogroll |  
        |  |    | 
        
            |  |  
            | 
                    
                        | SQL Dilinde  Select, Insert, Update, Delete Komutları |  |  
                        | 
	
    
		
            | Gönderiliyor lütfen bekleyin... | 
 |  |  
            | Veri Düzenleme Komutları DML(Data 
						Manuplation Language) 
 DML komutları var olan kayıtlar 
üzerinde işlem yapılmasını sağlar. Veri listeleme , yeni kayıt ekleme , var olan 
kaydı değiştirme veya silme işlemleri yapmak için kullanılır.
		SELECT ifadesi : 
						Tablolarda bulunan bilgileri elde etmenin en sık kullanılan biçimidir. Select 
						ifadesi diğer ek ifadeler ile birlikte veriyi filtrelemeyi yada daha 
						anlamlı kılmayı sağlar.
		
			
								SELECT
			[DISTINCT][ALL]  FROM Tablo_Adi
 [WHERE Kosul]
 [GROUP 
										BY Kosul]
 [HAVING Kosul]
 [UNION Kosul]
 [
										ORDER BY Alanlar [ASC] 
																[DESC]]
							
					
				
			Sorgu sonucunda tablonun bütün alanlarındaki verilerin elde edilmesi isteniyorsa  * 
karakteri kullanılmalı. Eğer tabloda belli kolonlardaki bilgiler isteniyorsa, istenilen alanlar aralarına virgül konularak 
sıralanır.
 
						Örnek : SQL cümlesinde bütün alanların 
						görüntülenmesi ve sadece istenilen alanların gösterilmesi.
							| SELECET  Alan1,  Alana2,  Alan3 
       FROM    
      Tablo_Adi |   Where (Koşul) İfadesi :  Select 
					cümlelerinde veriyi çeşitli koşullar sonucunda filtrelemek 
					için kullanılır. 
				
					Örnek : Personel tablosunda maaşı 1200den 
				büyük olan personeller.
						| SELECT * FROM Tablo_Adi WHERE Koşul |   SQL de Operatörler:
		Mantıksal Operatörler : İki yada 
						daha fazla ifade arasında mantıksal sorgu yapılır. 
		
							()      işlemleri gruplandırma ve 
öncelik belirleme AND   VE her iki ifade doğru 
ise işlem gerçekleşir
 OR     VEYA 
ifadelerden biri doğru ise işlem gerçekleşir
 NOT   DEĞİL ifadenin yanlış olması durumunda 
işlem yapılır
 Karşılaştırma Operatörleri:
		<      .. den daha 
						küçük
 >      .. den daha büyük
 >=    Büyük veya eşit
 <=    Küçük veya eşit
 =      Eşit
 <>    Eşit degil
 !=     Eşit degil
 !<     .. den küçük değil
 !>     .. den büyük değil
				
			
		Örnek : Maaşı 1200 den büyük ve DepartmanId si 1 
olmayan ve Adi Feryat olan personelin bilgileri.
  Matematiksel Operatörleri:
							SQL cümlelerinde 
matematiksel operatörler normal işlevlerini gerçekleştirirler.
					
				
			
		+   Toplama -   
Çıkarma
 *   Çarpma
 /    Bölme
							
						
					
				
			
		Örnek 
									: Personel tablosundan DepartmanId si 2 den farklı olan personellerin 
id, adı, soyadı, maaşı ve maaşının 25 ile toplamının 
listelenmesi.
  IN  
								(İçinde) Operatörü : Bir koşulun 
başka bir veri kümesi içinde olup olmaması durumu.
					
				
			
		Örnek: Personel tablosunda PersonleId 
							si 2 ,3 ve ya 5 olan personeller. Burda (2, 3 ,5 ) bir kümesi olarak 
							görebiliriz.  In ifadesi sabit bir veri kümesini sorguladığı gibi 
				başka bir sql cümlesi sonucu dönen değerler içinde de arama yapabilir. 
				Özellikle iç içe select ifadelerinde bu yapı kullanılır.
		Örnek : Başka bir tablodan sorgu sonucu 
				elde edilin veri kümesi içinde sorgulama. Departmanın kuruluş tarihi 01.01.1999 
				dan büyük olan departmanlarda bulunan personellerin listesi.  BETWEEN (Arasında) İfadesi : 
					Koşulun belirtilen iki değer arasında olup olmaması için kullanılır. Between 
					ifadesi  >= ve <= ifadesi yerinde kullanılabilir. 
		
		Örnek : Personle tablosunda maaşları 1000 ve 
				1300 arasındaki personellerin  adı ve soyad ve maaşlarının gösterilmesi. 
				Bu örnekte AS ifadesi ile Ad ve Soyad alanlarını birleştirip 
				tek olarak gösterdik.  LIKE (Benzer) İfadesi : Bir veri 
					kümesi içerisinde belirtiğimiz değere benzeyen verilerin olup olmadığını 
					kontrol etmek için kullanılır. Bu ifade genellikle karakter içeren bilgilerde 
					yani char, varchar, binary vb. tipli alanlar için kullanılır.
		%                 
				0 veya daha fazla karakter _                  
				Sadece tek bir karakter
 []                 
				Belirtilen karakterler arasında sadece tek bir karakter
 [^]               
				Belirtilen karakterler arasında olmayan tek bir karakter 
		
		Örneğin SELECT * FROM  Personel WHERE Adi  
				+   aşağıdaki like ifadeleri ile kullanılabilir. Adi alanı
		 LIKE 
				‘Al%’           Al ile 
				başlayan tüm isimler
 LIKE ‘%n’            en 
				ile biten tüm isimler
 LIKE ‘%y%’         y 
				karakterlerini içeren tüm isimler
 LIKE ‘____n’        en ile biten tüm 5 
				karakterli isimler
 LIKE ‘[FH]%’        F veya H ile 
				başlayan tüm isimler
 LIKE ‘[^U]%’       Başharfi U olmayan tüm isimler 
		
		Örnek : Adresi Barbaros içeren personellerin 
				PeronelId leri.
  SQL Fonksiyonları : SQL bulunan 
					standart fonksiyonlar.
		 AVG          Verilen 
				alanın aritmetik ortalamasını alır . SUM          Verilen 
				alanların toplamını alır.
 MAX          Verilen alanın 
				kayıtlar arasındaki en büyük değerini verir
 MIN           Verilen alanın 
				kayıtlar arasındaki en küçük değerini verir.
 ROUND       Verilen alanın virgülden sonraki 
				değerini yuvarlarlar
 COUNT       Verilen alanın kayıtlar arasında 
				kaç defa yazıldığını bulur. 
		GROUP BY İfadesi : Elde edilen 
					verilerin belli kriterlere göre gruplandırılması. Group by da dikkat edilmesi 
					gereken durum select ifadesinden sonra yazdığımız ve fomksiyonlar 
					dışındaki bütün kolonların group by ifadesinden sonra 
					sıralanması gerekir.
		Örnek : Personel Tablosundan departmana göre 
				ortalama maaş . Ortalaması alınan maaşı ROUND fonksiyonu ile virgülden sonraki 
				iki rakamına göre yuvarladık. Bu örnekte select te PDepartmanId ve Round 
				fonksiyonunu kullandık. Round fon ksiyon olduğu için GROUP BY ifaseinde sonra 
				sadece PDepartmanId yi ekledik.
  HAVING (Sahiplik) İfadesi : Gruplandırılmış 
					verilerin var olan koşula sahip olup olmadı kontrolu yapılır. Bu ifade 
					genellikle sum(), avg, min(), max() , vs. gibi ifadeler ile kullanılır.
		Örnek : PersonelMal taplosunda mal toplamı 40 
				tan büyük olanlar  UNION (Birleşim) ifadesi  :Veri 
					kümelerinde birleştirme işlemi yapar. Ancak veri kümelerinde aynı sayıda kolon 
					bulunmalı ve birbirine karşılıklı gelen kolonların veri tipleri ve 
					uzunlukları aynı olmalıdır. Union ALL ifadesi ile de kullanılır. ALL ifadesi 
					ile kullanıldığında birleştime sonucunda çift kayıt oluşursa hepsini getirir. 
					Union yanlız kullanıldığında çift kayıtları göz ardı eder.
		Örnek : Emlak vergisi için bina ve arsa için 
				ayrı ayrı tabloların oluşturalım.Tablo yapısı aşağıdaki gibi olsun.Bu iki tablo 
				arasında birleştime işlemi yapacağız. 2005 yılındaki bina ve arsaların 
				sahiplerId lerine göre raiç bedellerini bulacağız    ORDER BY (Sırala) İfadesi: Sql 
					sorgusu sonucunda elde edilen veriyi verilen kritere göre sıralar. ASC ek 
					ifadesi ile küçükten büyüğe DESC ile de büyükten küçüğe sıralar
		Örnek : PersonelMal Tablosunda PPersonleId 
				si  1 olan personelin mal varlığını küçükten büyüğe ve büyükten küçüğe 
				sıralama  DISTINCT İfadesi : Sql sorgu 
					sonucunda veri tekrarı oluşabilir.Bu durumlarda veri tekrarını önlemek 
					için  DISTINCT ifadesi kullanılır.
		JOIN (İlişkilendir)İfadesi :  
					Tablolar arasında mantıksal olarak ilişki kurmayı sağlar.Join ifadesi ek 
					ifadelerler daha kullanışlı hale getirilmiştir 
					Örnek : Personel ve PersonelMal tablolarını 
				birleştirme işlemi yapıldı ve Personel Tablosundan PersonelId, Adi ,Soyadi; 
				PersonelMal Tablosundan da Malın Adını ve Bedelini aldık. Burda dikkat edilmesi 
				gereken önemli bir nokta Personel Tablosunda da Adi isimli bir alan var 
				PersonelMal tablosunda da bu durumda TabloAdi.AlanAdi şeklinde yapılır. Yada 
				tabloya daha kısa isim verilim kısa ismi ile de kullanılabilir.Biz aşağıda 
				Personele P PersonelMal  da PM adı verdik.
						| SELECT Tablo1.*, Tablo2.* 
									 FROM Tablo1 , Tablo2 WHERE Tablo1.Alan = Tablo2.Alan |   INNER JOIN İfadesi : T-SQL de var 
					olan bir ifadedir. Tabloların bire bir ilikkilendirilmesini sağlar. Inner 
					joinde join yapılan tabloda ilgili kayıt yok ise boş kayıt geri döner.
		Örnek : Yukardaki örneği inner joinle 
				yapalım; PersonelId si 4 olan personel ait bilgiler gelsin.  LEFT JOIN İfadesi : Bu ilişki 
					biçimi de inner joindeki gibi sadece T-SQL de bulunmaktadır. Bu ifadede sol 
					taraf değeri NULL yada boş olması durumunda da; sql cümlesinin istediği veri 
					kümesini geri döndürür.
		RIGHT JOIN İfadesi :Right 
					joinde sağ taraf değeri NULL yada boş olması durumunda da sql 
					cümlesinin istediği veri kümesini geri döndürür.
		Örnek :Tablo yapısı aşağıdaki gibi olan 
				tablolardan  left join ve right joinle sql cümlesi yazılacak. Bina 
				tablosundan CaddeId ile Cadde isimlerine ulaşılacak. Ve hangi binanın hangi 
				caddede olduğunu bulunacak. EmlakBina tablosundaki CaddeId alanı boş 
				geçilebilir. Ve Cadde tablosuyla arasında ikincil (foreing key) olmadığı için 
				mantıklı kayıtlarda girilmemiş olabilir.    Şekil 
- Tablonun yapısı                                          Şekil - Tablodaki 
kayıtlar                            
		Left joinde sadece 2 kayıtta mantıklı veri olmasına 
				rağmen EmlakBina tablosunda bulunan kayıt sayısı kadar kayıt geri 
				döndü.Right joinde de bu durum sağ tarataki tablo için geçerlidir.Sağ taraftaki 
				yani Cadde tablosundaki kayıt sayısı kadar kayıt geri döndürdü.   T-SQL CASE İfadesi: Var olan 
					alanlarda bir alanda bir değeri sorgulayacak ve dönecek olan değere göre işlem 
					yapılacaksa case ifadesi kullanılır. 
				Örnek : Personel Tablosunda çocuk sayısına 
				göre maaşını belli katsayılarla hesaplanması.
					| SELECT Alanlar  CASE Kosul 
								WHEN VarolabilecekDeğer THEN  ELSE OlamayacakDeğer END |   INSERT komutu:  
							Tabloya veri eklemek için kullanılır.
			INSERT INTO Tablo veya View([Kolon 
listesi]) VALUES(Değerler) 
			Örnek : Tabloda bulunun bütün 
						kolonların teker teker yazılması ve değerlerinin atanması. 
					Örnek 
						: İkinci insert ifadesi ise tablodaki bütün alanlara kayıt yapılacağı 
					için kolon isimlerini yazmaya gerek kalmıyor. Ama dikkat edilmesi gereken durum 
					atanacak değerlerin doğru sırada yazılması.
						| INSERT INTO EmlakArsa(ArsaId, SahipId, Ada, Pafta, 
									Parsel, IslemYili, RaicBedel) VALUES (9, 2,150-52,45821-hb,15, 2005, 
									2000) |  
				
					Örnek : Başka bir tablodan 
				select ifadesi ile bilgi alıp tablomuza ekleme. BinaId si 5 olan EmlakBina 
				tablosundaki bilgilerin bir kısmı EmlakArsa tablosuna eklenmesi .
						| INSERT INTO 
      Departman VALUES (3, Genel Müdürlük, 01.01.2000) |  
				
					UPDATE komutu: Tablo 
					veya viewde bulunan kayıt yada kayıtların değiştirilmesi için kullanılır. 
					Değiştirilmesi istenen kolonların teker teker yazılıp değerlerin atanması 
					gerekmekte.
		UPDATE TabloAdi veya ViewAdi SET 
				(Kolonlar = Değerleri ,...)  [WHERE Kosul ] 
		Örnek :Departman tablosunda 
				DepartmanId 4 olan departmanın bütün alanlarının değiştirilmesi.
						| INSERT INTO 
      EmlakArsa(ArsaId, SahipId, Ada, Pafta, Parsel, IslemYili, RaicBedel)  
      SELECT BinaId, SahipSicil, Ada, 
      Pafta, Parsel, IslemYili, RaicBedel FROM EmlakBina WHERE BinaId = 5 |  
				
					Örnek : EmlakArsa tablosunda 
				işlem yılı 2005 olan kayıtlarda Raic bedeli 0.02 oranında artılılması.
						| UPDATE Departman 
      SET DepartmanId = 5,DAdi = Halkla İlişkiler,  
      KurulusTarihi=01.01.2001  WHERE  DepartmanId = 
      4 |  
				
					Örnek :Koşulsuz update işlemi. 
				EmlakArsa tablosundaki bütün ArsaId değerlerinin 1 artırılması.
						| UPDATE EmlakArsa 
      SET RaicBedel = RaicBedel + RaicBedel * 0.02  WHERE IslemYili = 
      2005 |  
				
					Delete Komutu:  Tablo 
					veya viewde bulunan kayıt yada kayıtların silinmesi amacı ile 
					kullanılır.
		DELETE  FROM TabloAdi [WHERE Koşul ]
		Örnek : Cadde tablosundaki 
				bütün kayıtların silinmesi.
		
			
				
		Örnek :EmlakBina tablosunda BinaId si 1 olan 
				kaydın silinmesi.burda where koşulu daha kompleks de yazılabilir.
						| UPDATE EmlakArsa 
      SET ArsaId = ArsaId + 
  1 |  
				
					Bir sonraki makalemizde T-SQL de fonksiyon, 
saklı yordam(stored procedur), tetikleyiciler (trigger) ları 
inceleyecez.
						| DELETE FROM 
      EmlakBina WHERE BinaId = 
  1 |  
                Makale:SQL Dilinde  Select, Insert, Update, Delete Komutları ADO.NET ve SQL Feryat Olcay
 |  
            |  |  
            |  |  
            | 
                    
                        
                            
                        
                            Eklenen Son 10 
                            Bu Konuda Geçmiş 10 
                        
                            Bu Konuda Yazılmış Yazılmış 10 Makale Yükleniyor
                         
                            Son Eklenen 10 Makale Yükleniyor
                         
                            Bu Konuda Yazılmış Geçmiş Makaleler Yükleniyor
                         |  
            |  |  |