makaleler / Veritabanı / MS SQL SERVER CURSOR İLE CASE WHEN UPDATE İŞLEMİ

MS SQL SERVER CURSOR İLE CASE WHEN UPDATE İŞLEMİ

29.08.2016 10:15:54

CURSOR İLE UPDATE EDİP FARKLI KOLONLARA DEĞER DÖNDÜRME İŞLEMİ

Sql Server da CURSOR ile aynı tablodaki bir kolona şart verip diğer kolonlarına değer döndüren kod aşağıdaki gibidir.



SELECT DOGUMTARIH,BKOD1 FROM PERKRT ORDER BY DOGUMTARIH


						 DECLARE @DOGUMTARIH SMALLDATETIME
						 DECLARE @BKOD1 SMALLINT
						 DECLARE @ILKSIRA SMALLINT 
						 DECLARE @SONSIRA SMALLINT 

								 DECLARE DOGUM_TARIH_AKTAR CURSOR FOR 
								 SELECT  DOGUMTARIH,BKOD1  FROM PERKRT ORDER BY DOGUMTARIH 

								 OPEN DOGUM_TARIH_AKTAR FETCH NEXT FROM DOGUM_TARIH_AKTAR INTO @DOGUMTARIH, @BKOD1
								 WHILE @@FETCH_STATUS = 0 
								 BEGIN 
											 UPDATE PERKRT  SET
											 @ILKSIRA =(CASE WHEN DOGUMTARIH ='1973-01-01' THEN 1 ELSE BKOD1 END),
											 @SONSIRA =(CASE WHEN DOGUMTARIH ='2016-01-01' THEN 2 END)
											 FETCH NEXT FROM DOGUM_TARIH_AKTAR INTO @DOGUMTARIH, @BKOD1
							END
						 CLOSE  DOGUM_TARIH_AKTAR
						 DEALLOCATE DOGUM_TARIH_AKTAR
yazar zfrylmz

Yorumlar

Bu içerik için sizde yorum yapabilirsiniz!
anasayfa | makaleler | haberler | dosyalar | linkler | hakkımızda