none
tablodan tabloya insert ve update

    Soru

  • arkadaşlar merhaba,

    a ve b adlı iki tablom var, a tablosunda ki verileri b tablosuna insert etmek istiyorum ama bunun için koşulum var her iki tablodaki sütunlar aynı id, barkod ve tarih, insert işleminde a tablosunda ki barkod b tablosunda mevcut ise a tablosunda ki tarihin b tablosunda ki tarihten büyük olmasını kontrol etmeli eğer büyükse update etmeli o barkoda ait bütün kolonları eğer küçük ise işlem yapmayıp bir sonraki veriye eçmeli ve insert işlemine devam etmeli, nasıl bir sorgu yazabilirim yardımcı olabilirmisiniz? 

    aşağıda ki gibi bir sorgu yazdım ama işe yaramadı, şimdiden teşekkürler

    syg

    if
    exists (select 1 from table1 t1 left join table2 t2 on (t1.coloumn1=t2.coloumn1 where t.coloumn1=t2.coloumn1 and kriter2)
    update table1 set(t.coloumn1=t2.coloumn1,t.coloumn2=t2.coloumn2,t.coloumn3=t2.coloumn3)
    else if exists (select 1 from table1 t where t.coloumn1=t2.coloumn1 and kriter2nin tersi)
    
    else
    insert table1 values (t.coloumn1=t2.coloumn1,t.coloumn2=t2.coloumn2,t.coloumn3=t2.coloumn3)

    22 Ocak 2014 Çarşamba 19:50

Yanıtlar

  • Merhaba, sorguyu yazdım biraz zor ama umarım anlarsın... Kendine göre düzenlemeyi unutma ;) 

    declare @barkod nvarchar(50)
    declare crs_Urunler cursor for select Barkod from Urunler
    
    open crs_Urunler
    
    FETCH NEXT FROM crs_Urunler into @barkod
    
    WHILE @@FETCH_STATUS = 0
    	BEGIN
    
     declare @_barkod nvarchar(50)
     set @_barkod =   (select Barkod from Urunler2 where Barkod = @barkod)
     
    declare @tarih1 date
    declare @tarih2 date
    
    set @tarih1 = (select Tarih from Urunler where Barkod = @barkod)
    set @tarih2 = (select Tarih from Urunler2 where Barkod = @barkod)
    
    if @_barkod is null or @_barkod = ''
    begin
    insert into Urunler2 (UrunAdi,UrunTipi,Barkod, Tarih)
    select UrunAdi,UrunTipi,Barkod,Tarih from Urunler where Barkod = @barkod
    end
    else if  @tarih1 > @tarih2
    update Urunler2 set Urunler2.UrunAdi = U1.UrunAdi, 
    					Urunler2.UrunTipi= U1.UrunTipi, 
    					Urunler2.Barkod =  U1.Barkod, 
    					Urunler2.Tarih =   U1.Tarih 
    from Urunler as U1 inner join Urunler2 as U2 on U1.UyeID = U2.UyeID
    				  where U2.Barkod = @barkod
    
    		FETCH NEXT FROM crs_Urunler INTO @barkod
    	END
    
    CLOSE crs_Urunler
    DEALLOCATE crs_Urunler

    Not : MsSql cursor fetch i araştırırsan sorguyu anlarsın...


    İyi Çalışmalar. Cihangir SUR [cihangirsur@hotmail.com]



    22 Ocak 2014 Çarşamba 23:22
    Yanıtlayıcı

Tüm Yanıtlar

  • Merhaba, sorguyu yazdım biraz zor ama umarım anlarsın... Kendine göre düzenlemeyi unutma ;) 

    declare @barkod nvarchar(50)
    declare crs_Urunler cursor for select Barkod from Urunler
    
    open crs_Urunler
    
    FETCH NEXT FROM crs_Urunler into @barkod
    
    WHILE @@FETCH_STATUS = 0
    	BEGIN
    
     declare @_barkod nvarchar(50)
     set @_barkod =   (select Barkod from Urunler2 where Barkod = @barkod)
     
    declare @tarih1 date
    declare @tarih2 date
    
    set @tarih1 = (select Tarih from Urunler where Barkod = @barkod)
    set @tarih2 = (select Tarih from Urunler2 where Barkod = @barkod)
    
    if @_barkod is null or @_barkod = ''
    begin
    insert into Urunler2 (UrunAdi,UrunTipi,Barkod, Tarih)
    select UrunAdi,UrunTipi,Barkod,Tarih from Urunler where Barkod = @barkod
    end
    else if  @tarih1 > @tarih2
    update Urunler2 set Urunler2.UrunAdi = U1.UrunAdi, 
    					Urunler2.UrunTipi= U1.UrunTipi, 
    					Urunler2.Barkod =  U1.Barkod, 
    					Urunler2.Tarih =   U1.Tarih 
    from Urunler as U1 inner join Urunler2 as U2 on U1.UyeID = U2.UyeID
    				  where U2.Barkod = @barkod
    
    		FETCH NEXT FROM crs_Urunler INTO @barkod
    	END
    
    CLOSE crs_Urunler
    DEALLOCATE crs_Urunler

    Not : MsSql cursor fetch i araştırırsan sorguyu anlarsın...


    İyi Çalışmalar. Cihangir SUR [cihangirsur@hotmail.com]



    22 Ocak 2014 Çarşamba 23:22
    Yanıtlayıcı
  • Söylemeyi unuttum bu kod için stored procedure kullanırsan daha mantıklı olur...

    İyi Çalışmalar. Cihangir SUR [cihangirsur@hotmail.com]

    23 Ocak 2014 Perşembe 12:03
    Yanıtlayıcı
  • yardımın için çok teşekkürler, dediğin şekilde düzenledim ama bu sefer farklı bir sıkıntı ile karşılaştım, convert seçeneklerinin tamamını nerdeyse denedim ama sonuç alamadım hata mesajı, teşekkürler

    Msg 242, Level 16, State 3, Line 223
    The conversion of a nvarchar data type to a datetime data type resulted in an out-of-range value.
    The statement has been terminated.
    Msg 242, Level 16, State 3, Line 223
    The conversion of a nvarchar data type to a datetime data type resulted in an out-of-range value.
    The statement has been terminated.
    Msg 242, Level 16, State 3, Line 223
    The conversion of a nvarchar data type to a datetime data type resulted in an out-of-range value.
    The statement has been terminated.
    Msg 242, Level 16, State 3, Line 223
    The conversion of a nvarchar data type to a datetime data type resulted in an out-of-range value.
    The statement has been terminated.

    23 Ocak 2014 Perşembe 12:58
  • Tarih alanınızın tipi datetime değilmi ? Datetime değilse, ilgili alandaki kayıtlardan bazıları farklı kayıt olabilir (tarih format farkları, yada tarih olmayan veriler vb.). Bunları kontrol edermisiniz ?

    Ayrıca 1. tablodaki tarih alanı datetime tipindense, 2. tablodaki tarih alanıda aynı tipten olmalıdırki, kayıtlar aktarılabilsin.


    Microsoft bu servisi kullanıcılarına yardım etme, Microsoft urunleri ve teknolojileriyle ilgili bilgi bankasını genişletme amacıyla ucretsiz sunmaktadır. Bu icerik olduğu gibi benim tarafımdan hazırlanmış olup Microsoft tarafından herhangi bir sorumluluk ustlenildiği anlamına gelmez. Iletişim: Mail Gönder

    23 Ocak 2014 Perşembe 13:01
    Moderatör
  • Kodunu paylaşırmısın nasıl yaptığına bir bakalım...

    İyi Çalışmalar. Cihangir SUR [cihangirsur@hotmail.com]

    23 Ocak 2014 Perşembe 13:02
    Yanıtlayıcı
  • her iki alanında tipi datetime takıldığım nokta da o :)
    23 Ocak 2014 Perşembe 13:37
  • declare @barkod nvarchar(50)
    declare crs_1521 cursor for select BARKOD from dbo.[15-21]
    
    open crs_1521
    
    FETCH NEXT FROM crs_1521 into @BARKOD
    
    WHILE @@FETCH_STATUS = 0
    	BEGIN
    
     declare @_barkod nvarchar(50)
     set @_barkod =   (select Barkod from dbo.[15-21] where BARKOD = @barkod)
     
    declare @tarih1 date
    declare @tarih2 date
    
    set @tarih1 = (select dbo.[15-211].[SON AKSIYON TARIHI] from dbo.[15-211] where Barkod = @barkod)
    set @tarih2 = (select dbo.[15-21].[SON AKSIYON TARIHI] from dbo.[15-21] where Barkod = @barkod)
    
    if @_barkod is null
    begin
    insert into dbo.[15-21]([ISLEM TAR]
          ,[BARKOD]
          ,[OLAY NO]
          ,[MUSTERI ADI]
          ,[MUSTERI IKINCI ADI]
          ,[MUSTERI SOYADI]
          ,[MUSTERI NO]
          ,[AKTIF ADIM]
          ,[AKTIF ADIM SURESI]
          ,[KART DUZEYI]
          ,[MUSTERI TIPI]
          ,[DAGITIMA CIKMA SAYISI]
          ,[EK KART RESIT MI]
          ,[FIZIKI KART LOKASYONU]
          ,[ILETISIM MERKEZI AKSIYONU]
          ,[ILETISIM MERKEZINDEN GECTI]
          ,[IPTAL NEDEN KODU]
          ,[ISTISNAI DURUM MU]
          ,[ISTISNAI DURUM NEDENI]
          ,[KAMPANYA KODU]
          ,[KANAL KODU]
          ,[KART AKTIFLIK STATUSU]
          ,[KART ALT STATUSU]
          ,[KART BASIM NEDENI]
          ,[KART GONDERIM TIPI]
          ,[KART NO]
          ,[KART STATUSU]
          ,[KART STILI]
          ,[KART SUBE KODU]
          ,[KART SUBE ADI]
          ,[KART BOLGESI]
          ,[KART TURU]
          ,[KART VADE TARIHI]
          ,[KART TESLIM BOLGESI]
          ,[KAZANIM KANALI]
          ,[KURYE ADI]
          ,[KURYE CIKIS TARIHI]
          ,[KURYE KODU]
          ,[DAGITIMA CIKMA SURESI]
          ,[MUSTERI DURUMU]
          ,[NOT BIRAKILDI SAYISI]
          ,[OFFLINE BASIM TARIHI]
          ,[PSN]
          ,[KURYE CIKIS SAYISI]
          ,[SEGMENT]
          ,[SON AKSIYON TARIHI]
          ,[SON AKSIYON ALAN KULLANICI]
          ,[KURYE TALIMATI]
          ,[SOZLESMELI]
          ,[SUBE IKNADAN GECTI MI]
          ,[SUBE IKNADA ALINAN AKSIYON]
          ,[TCKN]
          ,[TESLIM ALAN]
          ,[TESLIM ALAN SUBE]
          ,[TESLIM ALAN SUBE KODU]
          ,[TESLIM EDILECEK SUBE]
          ,[TESLIM EDILECEK SUBE KODU]
          ,[BARKOD URUN KODU]
          ,[BARKOD URUN ACIKLAMASI]
          ,[AKIS BASLAMA TARIHI]
          ,[AKIS DURUMU]
          ,[AKSIYON NOTU]
          ,[ASIL KART BASIM ADI]
          ,[BASIM FIRMASI]
          ,[BASIM TALEP EDEN OPERATOR]
          ,[BASIM YAPAN OPERATOR]
          ,[BATCH NO]
          ,[CHIP URUN KODU]
          ,[ESKI KART NO]
          ,[ESKI SON KULLANIM TARIHI]
          ,[FIZIKI LOKASYON DEGISIM TARIHI]
          ,[KULLANICI AKSIYONU]
          ,[KULLANICI AKSIYONU ACK]
          ,[GERCEKLESEN AKSIYON]
          ,[GERCEKLESEN AKSIYON ACK]
          ,[KULLANICI AKSIYON NEDENI]
          ,[KULLANICI AKSIYON NEDENI ACK]
          ,[GERCEKLESEN AKSIYON NEDENI]
          ,[GERCEKLESEN AKSIYON NEDENI ACK]
          ,[FIZIKI BASIM TARIHI]
          ,[KART BIN]
          ,[KART GONDERIM ADRESI]
          ,[KART GONDERIM ILI]
          ,[KART GONDERIM IL KODU]
          ,[KART GONDERIM ILCESI]
          ,[KART LIMITI]
          ,[MUSTERI KK SAYISI]
          ,[OPERASYON NEDEN KODU]
          ,[OPERASYON NEDEN KODU ACK]
          ,[ONCELIKLI MUSTERI]
          ,[KART URUN KODU]
          ,[KART URUN KODU ACK]
          ,[KART SUBE ILI]
          ,[KART SUBE IL KODU]
          ,[UPGRADE KART MI]
          ,[SUBE MUSTERIYE TESLIMDEN GECTIMI]
          ,[KART BASIM NEDENI ACK]
          ,[KART TIPI]
    )
    select [ISLEM TAR]
          ,[BARKOD]
          ,[OLAY NO]
          ,[MUSTERI ADI]
          ,[MUSTERI IKINCI ADI]
          ,[MUSTERI SOYADI]
          ,[MUSTERI NO]
          ,[AKTIF ADIM]
          ,[AKTIF ADIM SURESI]
          ,[KART DUZEYI]
          ,[MUSTERI TIPI]
          ,[DAGITIMA CIKMA SAYISI]
          ,[EK KART RESIT MI]
          ,[FIZIKI KART LOKASYONU]
          ,[ILETISIM MERKEZI AKSIYONU]
          ,[ILETISIM MERKEZINDEN GECTI]
          ,[IPTAL NEDEN KODU]
          ,[ISTISNAI DURUM MU]
          ,[ISTISNAI DURUM NEDENI]
          ,[KAMPANYA KODU]
          ,[KANAL KODU]
          ,[KART AKTIFLIK STATUSU]
          ,[KART ALT STATUSU]
          ,[KART BASIM NEDENI]
          ,[KART GONDERIM TIPI]
          ,[KART NO]
          ,[KART STATUSU]
          ,[KART STILI]
          ,[KART SUBE KODU]
          ,[KART SUBE ADI]
          ,[KART BOLGESI]
          ,[KART TURU]
          ,[KART VADE TARIHI]
          ,[KART TESLIM BOLGESI]
          ,[KAZANIM KANALI]
          ,[KURYE ADI]
          ,[KURYE CIKIS TARIHI]
          ,[KURYE KODU]
          ,[DAGITIMA CIKMA SURESI]
          ,[MUSTERI DURUMU]
          ,[NOT BIRAKILDI SAYISI]
          ,[OFFLINE BASIM TARIHI]
          ,[PSN]
          ,[KURYE CIKIS SAYISI]
          ,[SEGMENT]
          ,[SON AKSIYON TARIHI]
          ,[SON AKSIYON ALAN KULLANICI]
          ,[KURYE TALIMATI]
          ,[SOZLESMELI]
          ,[SUBE IKNADAN GECTI MI]
          ,[SUBE IKNADA ALINAN AKSIYON]
          ,[TCKN]
          ,[TESLIM ALAN]
          ,[TESLIM ALAN SUBE]
          ,[TESLIM ALAN SUBE KODU]
          ,[TESLIM EDILECEK SUBE]
          ,[TESLIM EDILECEK SUBE KODU]
          ,[BARKOD URUN KODU]
          ,[BARKOD URUN ACIKLAMASI]
          ,[AKIS BASLAMA TARIHI]
          ,[AKIS DURUMU]
          ,[AKSIYON NOTU]
          ,[ASIL KART BASIM ADI]
          ,[BASIM FIRMASI]
          ,[BASIM TALEP EDEN OPERATOR]
          ,[BASIM YAPAN OPERATOR]
          ,[BATCH NO]
          ,[CHIP URUN KODU]
          ,[ESKI KART NO]
          ,[ESKI SON KULLANIM TARIHI]
          ,[FIZIKI LOKASYON DEGISIM TARIHI]
          ,[KULLANICI AKSIYONU]
          ,[KULLANICI AKSIYONU ACK]
          ,[GERCEKLESEN AKSIYON]
          ,[GERCEKLESEN AKSIYON ACK]
          ,[KULLANICI AKSIYON NEDENI]
          ,[KULLANICI AKSIYON NEDENI ACK]
          ,[GERCEKLESEN AKSIYON NEDENI]
          ,[GERCEKLESEN AKSIYON NEDENI ACK]
          ,[FIZIKI BASIM TARIHI]
          ,[KART BIN]
          ,[KART GONDERIM ADRESI]
          ,[KART GONDERIM ILI]
          ,[KART GONDERIM IL KODU]
          ,[KART GONDERIM ILCESI]
          ,[KART LIMITI]
          ,[MUSTERI KK SAYISI]
          ,[OPERASYON NEDEN KODU]
          ,[OPERASYON NEDEN KODU ACK]
          ,[ONCELIKLI MUSTERI]
          ,[KART URUN KODU]
          ,[KART URUN KODU ACK]
          ,[KART SUBE ILI]
          ,[KART SUBE IL KODU]
          ,[UPGRADE KART MI]
          ,[SUBE MUSTERIYE TESLIMDEN GECTIMI]
          ,[KART BASIM NEDENI ACK]
          ,[KART TIPI] from dbo.[15-211] where Barkod = @barkod
    end
    else if  @tarih1 > @tarih2
    
    update dbo.[15-21] set [ISLEM TAR] = (select [ISLEM TAR] from dbo.[15-211]where Barkod = @barkod),
    				    BARKOD = (select BARKOD from dbo.[15-211]where Barkod = @barkod),
    				    [OLAY NO] = (select [OLAY NO] from dbo.[15-211]where Barkod = @barkod),
    				    [MUSTERI ADI] = (select [MUSTERI ADI] from dbo.[15-211]where Barkod = @barkod),
    				    [MUSTERI IKINCI ADI] = (select [MUSTERI IKINCI ADI] from dbo.[15-211]where Barkod = @barkod),
    				    [MUSTERI SOYADI] = (select [MUSTERI SOYADI] from dbo.[15-211]where Barkod = @barkod),
    				    [MUSTERI NO] = (select [MUSTERI NO] from dbo.[15-211]where Barkod = @barkod),
    				    [AKTIF ADIM] = (select [AKTIF ADIM] from dbo.[15-211]where Barkod = @barkod),
    				    [AKTIF ADIM SURESI] = (select [AKTIF ADIM SURESI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART DUZEYI] = (select [KART DUZEYI] from dbo.[15-211]where Barkod = @barkod),
    				    [MUSTERI TIPI] = (select [MUSTERI TIPI] from dbo.[15-211]where Barkod = @barkod),
    				    [DAGITIMA CIKMA SAYISI] = (select [DAGITIMA CIKMA SAYISI] from dbo.[15-211]where Barkod = @barkod),
    				    [EK KART RESIT MI] = (select [EK KART RESIT MI] from dbo.[15-211]where Barkod = @barkod),
    				    [FIZIKI KART LOKASYONU] = (select [FIZIKI KART LOKASYONU] from dbo.[15-211]where Barkod = @barkod),
    				    [ILETISIM MERKEZI AKSIYONU] = (select [ILETISIM MERKEZI AKSIYONU] from dbo.[15-211]where Barkod = @barkod),
    				    [ILETISIM MERKEZINDEN GECTI] = (select [ILETISIM MERKEZINDEN GECTI] from dbo.[15-211]where Barkod = @barkod),
    				    [IPTAL NEDEN KODU] = (select [IPTAL NEDEN KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [ISTISNAI DURUM MU] = (select [ISTISNAI DURUM MU] from dbo.[15-211]where Barkod = @barkod),
    				    [ISTISNAI DURUM NEDENI] = (select [ISTISNAI DURUM NEDENI] from dbo.[15-211]where Barkod = @barkod),
    				    [KAMPANYA KODU] = (select [KAMPANYA KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [KANAL KODU] = (select [KANAL KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [KART AKTIFLIK STATUSU] = (select [KART AKTIFLIK STATUSU] from dbo.[15-211]where Barkod = @barkod),
    				    [KART ALT STATUSU] = (select [KART ALT STATUSU] from dbo.[15-211]where Barkod = @barkod),
    				    [KART BASIM NEDENI] = (select [KART BASIM NEDENI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART GONDERIM TIPI] = (select [KART GONDERIM TIPI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART NO] = (select [KART NO] from dbo.[15-211]where Barkod = @barkod),
    				    [KART STATUSU] = (select [KART STATUSU] from dbo.[15-211]where Barkod = @barkod),
    				    [KART STILI] = (select [KART STILI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART SUBE KODU] = (select [KART SUBE KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [KART SUBE ADI] = (select [KART SUBE ADI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART BOLGESI] = (select [KART BOLGESI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART TURU] = (select [KART TURU] from dbo.[15-211]where Barkod = @barkod),
    				    [KART VADE TARIHI] = (select [KART VADE TARIHI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART TESLIM BOLGESI] = (select [KART TESLIM BOLGESI] from dbo.[15-211]where Barkod = @barkod),
    				    [KAZANIM KANALI] = (select [KAZANIM KANALI] from dbo.[15-211]where Barkod = @barkod),
    				    [KURYE ADI] = (select [KURYE ADI] from dbo.[15-211]where Barkod = @barkod),
    				    [KURYE CIKIS TARIHI] = (select [KURYE CIKIS TARIHI] from dbo.[15-211]where Barkod = @barkod),
    				    [KURYE KODU] = (select [KURYE KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [DAGITIMA CIKMA SURESI] = (select [DAGITIMA CIKMA SURESI] from dbo.[15-211]where Barkod = @barkod),
    				    [MUSTERI DURUMU] = (select [MUSTERI DURUMU] from dbo.[15-211]where Barkod = @barkod),
    				    [NOT BIRAKILDI SAYISI] = (select [NOT BIRAKILDI SAYISI] from dbo.[15-211]where Barkod = @barkod),
    				    [OFFLINE BASIM TARIHI] = (select [OFFLINE BASIM TARIHI] from dbo.[15-211]where Barkod = @barkod),
    				    PSN = (select PSN from dbo.[15-211]where Barkod = @barkod),
    				    [KURYE CIKIS SAYISI] = (select [KURYE CIKIS SAYISI] from dbo.[15-211]where Barkod = @barkod),
    				    SEGMENT = (select SEGMENT from dbo.[15-211]where Barkod = @barkod),
    				    [SON AKSIYON TARIHI] = (select [SON AKSIYON TARIHI] from dbo.[15-211]where Barkod = @barkod),
    				    [SON AKSIYON ALAN KULLANICI] = (select [SON AKSIYON ALAN KULLANICI] from dbo.[15-211]where Barkod = @barkod),
    				    [KURYE TALIMATI] = (select [KURYE TALIMATI] from dbo.[15-211]where Barkod = @barkod),
    				    SOZLESMELI = (select SOZLESMELI from dbo.[15-211]where Barkod = @barkod),				  
    				    [SUBE IKNADAN GECTI MI] = (select [SUBE IKNADAN GECTI MI] from dbo.[15-211]where Barkod = @barkod),
    				    [SUBE IKNADA ALINAN AKSIYON] = (select [SUBE IKNADA ALINAN AKSIYON] from dbo.[15-211]where Barkod = @barkod),
    				    TCKN = (select TCKN from dbo.[15-211]where Barkod = @barkod),
    				    [TESLIM ALAN] = (select [TESLIM ALAN] from dbo.[15-211]where Barkod = @barkod),
    				    [TESLIM ALAN SUBE] = (select [TESLIM ALAN SUBE] from dbo.[15-211]where Barkod = @barkod),
    				    [TESLIM ALAN SUBE KODU] = (select [TESLIM ALAN SUBE KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [TESLIM EDILECEK SUBE] = (select [TESLIM EDILECEK SUBE] from dbo.[15-211]where Barkod = @barkod),
    				    [TESLIM EDILECEK SUBE KODU] = (select [TESLIM EDILECEK SUBE KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [BARKOD URUN KODU] = (select [BARKOD URUN KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [BARKOD URUN ACIKLAMASI] = (select [BARKOD URUN ACIKLAMASI] from dbo.[15-211]where Barkod = @barkod),
    				    [AKIS BASLAMA TARIHI] = (select [AKIS BASLAMA TARIHI] from dbo.[15-211]where Barkod = @barkod),
    				    [AKIS DURUMU] = (select [AKIS DURUMU] from dbo.[15-211]where Barkod = @barkod),
    				    [AKSIYON NOTU] = (select [AKSIYON NOTU] from dbo.[15-211]where Barkod = @barkod),
    				    [ASIL KART BASIM ADI] = (select [ASIL KART BASIM ADI] from dbo.[15-211]where Barkod = @barkod),
    				    [BASIM FIRMASI] = (select [BASIM FIRMASI] from dbo.[15-211]where Barkod = @barkod),
    				    [BASIM TALEP EDEN OPERATOR] = (select [BASIM TALEP EDEN OPERATOR] from dbo.[15-211]where Barkod = @barkod),
    				    [BASIM YAPAN OPERATOR]= (select [BASIM YAPAN OPERATOR] from dbo.[15-211]where Barkod = @barkod),
    				    [BATCH NO] = (select [BATCH NO] from dbo.[15-211]where Barkod = @barkod),
    				    [CHIP URUN KODU] = (select [CHIP URUN KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [ESKI KART NO] = (select [ESKI KART NO] from dbo.[15-211]where Barkod = @barkod),
    				    [ESKI SON KULLANIM TARIHI] = (select [ESKI SON KULLANIM TARIHI] from dbo.[15-211]where Barkod = @barkod),
    				    [FIZIKI LOKASYON DEGISIM TARIHI] = (select [FIZIKI LOKASYON DEGISIM TARIHI] from dbo.[15-211]where Barkod = @barkod),
    				    [KULLANICI AKSIYONU] = (select [KULLANICI AKSIYONU] from dbo.[15-211]where Barkod = @barkod),
    				    [KULLANICI AKSIYONU ACK] = (select [KULLANICI AKSIYONU ACK] from dbo.[15-211]where Barkod = @barkod),
    				    [GERCEKLESEN AKSIYON] = (select [GERCEKLESEN AKSIYON] from dbo.[15-211]where Barkod = @barkod),
    				    [GERCEKLESEN AKSIYON ACK] = (select [GERCEKLESEN AKSIYON ACK] from dbo.[15-211]where Barkod = @barkod),
    				    [KULLANICI AKSIYON NEDENI] = (select [KULLANICI AKSIYON NEDENI] from dbo.[15-211]where Barkod = @barkod),
    				    [KULLANICI AKSIYON NEDENI ACK] = (select [KULLANICI AKSIYON NEDENI ACK] from dbo.[15-211]where Barkod = @barkod),
    				    [GERCEKLESEN AKSIYON NEDENI] = (select [GERCEKLESEN AKSIYON NEDENI] from dbo.[15-211]where Barkod = @barkod),
    				    [GERCEKLESEN AKSIYON NEDENI ACK] = (select [GERCEKLESEN AKSIYON NEDENI ACK] from dbo.[15-211]where Barkod = @barkod),
    				    [FIZIKI BASIM TARIHI] = (select [FIZIKI BASIM TARIHI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART BIN] = (select [KART BIN] from dbo.[15-211]where Barkod = @barkod),
    				    [KART GONDERIM ADRESI] = (select [KART GONDERIM ADRESI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART GONDERIM ILI] = (select [KART GONDERIM ILI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART GONDERIM IL KODU] = (select [KART GONDERIM IL KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [KART GONDERIM ILCESI] = (select [KART GONDERIM ILCESI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART LIMITI] = (select [KART LIMITI] from dbo.[15-211]where Barkod = @barkod),
    				    [MUSTERI KK SAYISI] = (select [MUSTERI KK SAYISI] from dbo.[15-211]where Barkod = @barkod),
    				    [OPERASYON NEDEN KODU] = (select [OPERASYON NEDEN KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [OPERASYON NEDEN KODU ACK] = (select [OPERASYON NEDEN KODU ACK] from dbo.[15-211]where Barkod = @barkod),
    				    [ONCELIKLI MUSTERI] = (select [ONCELIKLI MUSTERI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART URUN KODU] = (select [KART URUN KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [KART URUN KODU ACK] = (select [KART URUN KODU ACK] from dbo.[15-211]where Barkod = @barkod),
    				    [KART SUBE ILI] = (select [KART SUBE ILI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART SUBE IL KODU]= (select [KART SUBE IL KODU] from dbo.[15-211]where Barkod = @barkod),
    				    [UPGRADE KART MI] = (select [UPGRADE KART MI] from dbo.[15-211]where Barkod = @barkod),
    				    [SUBE MUSTERIYE TESLIMDEN GECTIMI] = (select [SUBE MUSTERIYE TESLIMDEN GECTIMI] from dbo.[15-211]where Barkod = @barkod),
    				    [KART BASIM NEDENI ACK] = (select [KART BASIM NEDENI ACK] from dbo.[15-211]where Barkod = @barkod),
    				    [KART TIPI] = (select [KART TIPI] from dbo.[15-211]where Barkod = @barkod) WHERE BARKOD = @barkod
    			  
    
    		FETCH NEXT FROM crs_1521 INTO @barkod
    	END
    
    CLOSE crs_1521
    DEALLOCATE crs_1521

    23 Ocak 2014 Perşembe 13:38
  • --İnsert işlemleri dbo.[15-211] Tablosunda olan ve dbo.[15-21] tablosunda olmayanlar bulunup aktarılıyor. 
    INSERT INTO dbo.[15-21]
    SELECT * FROM dbo.[15-211] T1 WHERE NOT EXISTS (SELECT 1 FROM dbo.[15-21] T2 WHERE T2.BARKOD=T1.BARKOD)
    
    --UPDATE işlemleri 
    UPDATE T2 Set
      T2.TARIH=t1.TARIH,
      T2.[ISLEM NO]=t1.[ISLEM NO] --vs...
    FROM dbo.[15-211] T1
    INNER JOIN dbo.[15-21] T2 ON T1.BARKOD=T2.BARKOD AND T1.TARIH>T2.TARIH
    
    Update işleminde Aggregate Function'ları kullanmayacaksan , birebir update işlemi söz konusuysa bu sorgular işini görecektir.


    23 Ocak 2014 Perşembe 14:17
  • üfff bu ne :) Şimdi ben burada convert göremedim ! Ve update sorgusunu ben bu şekilde yazmadım yukarıda... Daha önce ki yazdığımda böyle yapmıştım sonradan düzelttim. Onu yeniden gözden geçir. Bir de convert nerede yapıyorsun onu göster. Aslında convert etmeni gerektirecek bir durum yok burada. Tablolarda ki tarih kısımlarının tipi date ise problem olmaz...

    İyi Çalışmalar. Cihangir SUR [cihangirsur@hotmail.com]

    23 Ocak 2014 Perşembe 14:25
    Yanıtlayıcı