none
Sql 'de aynı verileri toplayıp(Sum) yeni gelen verileri aynı tabloya nasıl insert ederiz(Eskileri silerek)? RRS feed

  • Soru

  • Select Barkodu,Urun_Adi, SUM(Kalan) As Kalan from Urunler Group By Barkodu,Urun_Adi order by Urun_Adi

    Bu sorgu ile verileri Urunler isimli tablodan sorguluyorum ve aynı barkoda

    ait "Kalan"kısımlarını topluyorum.(Exceldeki Etopla gibi)(Çok sayıda tekrarlı veri var)

    Bu gelen sonucu nasıl aynı tabloya dönüştürebilirim.

    (Eski verileri silerek)

    Eğer bu mümkün değilse başka çözümler nelerdir?

    Şimdiden teşekkürler.




    • Düzenleyen EGESAYIM 29 Temmuz 2019 Pazartesi 19:25 Eksik bilgi
    29 Temmuz 2019 Pazartesi 19:20

Tüm Yanıtlar

  • CREATE PROCEDURE UrunEkle
    @UrunAdi NVARCHAR(50)
    @Adet INT
    AS
    BEGIN
         SET NOCOUNT ON
         IF NOT EXISTS (SELECT UrunAdi FROM TblUrunler WHERE UrunAdi = @UrunAdi) 
              INSERT INTO TblUrunler SELECT UrunAdi,Adet….
         ELSE
               UPDATE TblUrunler SET Adet = Adet + ISNULL(@Adet,0) WHERE UrunAdi = @UrunAdi
    END
    Bu kod ile ürün ekleme işlemlerini yapmalısınız. Mevcut Tabloyu aktarmak için ise ; 

    SELECT UrunAdi,SUM(Adet) AS Adet INTO #tmpUrunler FROM TblUrunler GROUP BY UrunAdi;
    
    
    TRUNCATE TABLE TblUrunler
    
    
    INSERT INTO TblUrunler 
    SELECT * FROM #tmpUrunler
    


    26 Eylül 2019 Perşembe 06:39