folder Tahribat.com Forumları
linefolder Database - Veritabanı
linefolder Sql İnner Join İle Update



Sql İnner Join İle Update

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    juniourfalcon
    juniourfalcon's avatar
    Kayıt Tarihi: 22/Mayıs/2012
    Erkek

    murid ve murideler elimde bir sql kod var değer verince çalışıyor ama diğer tablonun toplamını al dediğimde çalışmıyor hata veriyor

    sıkıntı nerede diğer tablodaki verileri toplatıp nasıl güncelleyebilirim.

    update musteri set borctop=(sum(ucret)) Select musteri.id As DRCs1,  musteri.borctop As btop,  servis.ucret As ucret From musteri inner Join servis On (musteri.id = servis.cariid)

     

    ucret sütunu bulunamadı hatası veriyor oraya sayı eklediğimde de sağlam çalışıyor

    bu kodu nasıl düzeltebilirim

     

  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    yolbulucu
    yolbulucu's avatar
    Banlanmış Üye
    Kayıt Tarihi: 06/Nisan/2007
    Homo

    saçmalamış olabilirm ama left join le dener misin


    29.99cm, titanyum kaplamalı, çift damarlı, su ve yağ soğutmalı.
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    EmQceR
    EmQceR's avatar
    Kayıt Tarihi: 14/Kasım/2007
    Erkek

    Yapmadan önce yedek al hocam

    update musteri set borctop=(Select sum(servis.ucret) From musteri inner Join servis On (musteri.id = servis.cariid))

    İle yapabilirsin

     

    EmQceR tarafından 17/Oca/19 14:26 tarihinde düzenlenmiştir

    ...
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    juniourfalcon
    juniourfalcon's avatar
    Kayıt Tarihi: 22/Mayıs/2012
    Erkek
    yolbulucu bunu yazdı

    saçmalamış olabilirm ama left join le dener misin

    malesef onlada denedim aynı hatayı veriyor ama çıktıyı veriyor fakat o değerle güncelelemiyor

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    juniourfalcon
    juniourfalcon's avatar
    Kayıt Tarihi: 22/Mayıs/2012
    Erkek
    EmQceR bunu yazdı

    Yapmadan önce yedek al hocam

    update musteri set borctop=(Select sum(servis.ucret) From musteri inner Join servis On (musteri.id = servis.cariid))

    İle yapabilirsin

     

    eyvallah olduda yalnız hepsini topluyor benim ihtiyacım musteri id ile servis cariid teki aynı olanları toplaması

  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Yazilimci
    Yazilimci's avatar
    Kayıt Tarihi: 01/Şubat/2014
    Erkek

    Hocam aşağıdaki gibi dener misin

     

    UPDATE a SET

    a.borctop=SUM(b.ucret)

    FROM musteri a WITH(NOLOCK) INNER JOIN servis b WITH(NOLOCK) ON a.id=b.cariid

     

    NOT: MSSQL için hazırlanmıştır


    Titanyumun gücü adına!!!
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    juniourfalcon
    juniourfalcon's avatar
    Kayıt Tarihi: 22/Mayıs/2012
    Erkek
    Yazilimci bunu yazdı

    Hocam aşağıdaki gibi dener misin

     

    UPDATE a SET

    a.borctop=SUM(b.ucret)

    FROM musteri a WITH(NOLOCK) INNER JOIN servis b WITH(NOLOCK) ON a.id=b.cariid

     

    NOT: MSSQL için hazırlanmıştır

    Msg 157, Level 15, State 1, Line 3
    An aggregate may not appear in the set list of an UPDATE statement.

     

    malesef çalışmadı 

  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Yazilimci
    Yazilimci's avatar
    Kayıt Tarihi: 01/Şubat/2014
    Erkek
    juniourfalcon bunu yazdı
    Yazilimci bunu yazdı

    Hocam aşağıdaki gibi dener misin

     

    UPDATE a SET

    a.borctop=SUM(b.ucret)

    FROM musteri a WITH(NOLOCK) INNER JOIN servis b WITH(NOLOCK) ON a.id=b.cariid

     

    NOT: MSSQL için hazırlanmıştır

    Msg 157, Level 15, State 1, Line 3
    An aggregate may not appear in the set list of an UPDATE statement.

     

    malesef çalışmadı 

    Hocam tahminimce bu sorgu sana sürekli lazım olacak. Şöyle yapabilirsin. Aşağıdaki gibi bir view yap.

    create view ToplamHesapla

    as

    SELECT a.id, SUM(b.ucret) as UCRET, a.borctop FROM musteri a WITH(NOLOCK) INNER JOIN servis b WITH(NOLOCK) ON a.id=b.cariid

     

    update ToplamHesapla set borctop=UCRET

    bu sorguyu çalıştırdın mı istediğin kesin olur. Şuan detaylı bakamıyorum


    Titanyumun gücü adına!!!
  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    EmQceR
    EmQceR's avatar
    Kayıt Tarihi: 14/Kasım/2007
    Erkek
    juniourfalcon bunu yazdı
    EmQceR bunu yazdı

    Yapmadan önce yedek al hocam

    update musteri set borctop=(Select sum(servis.ucret) From musteri inner Join servis On (musteri.id = servis.cariid))

    İle yapabilirsin

     

    eyvallah olduda yalnız hepsini topluyor benim ihtiyacım musteri id ile servis cariid teki aynı olanları toplaması

    Yedek alarak bunu da dener misin 

    Update musteri inner join servis on musteri.id = servis.cariid set musteri.borctop = sum(servis.ucret)

     


    ...
  10. KısayolKısayol reportŞikayet pmÖzel Mesaj
    juniourfalcon
    juniourfalcon's avatar
    Kayıt Tarihi: 22/Mayıs/2012
    Erkek
    EmQceR bunu yazdı
    juniourfalcon bunu yazdı
    EmQceR bunu yazdı

    Yapmadan önce yedek al hocam

    update musteri set borctop=(Select sum(servis.ucret) From musteri inner Join servis On (musteri.id = servis.cariid))

    İle yapabilirsin

     

    eyvallah olduda yalnız hepsini topluyor benim ihtiyacım musteri id ile servis cariid teki aynı olanları toplaması

    Yedek alarak bunu da dener misin 

    Update musteri inner join servis on musteri.id = servis.cariid set musteri.borctop = sum(servis.ucret)

     

    yok kabul etmiyor inner join başta kabul etmiyor

  11. KısayolKısayol reportŞikayet pmÖzel Mesaj
    juniourfalcon
    juniourfalcon's avatar
    Kayıt Tarihi: 22/Mayıs/2012
    Erkek

    en sonunda çözdüm eğer birisine daha lazım olursa kodu vereyim

     

    Update musteri set borctop = (select sum(servis.ucret)from servis where cariid=musteri.id) from musteri inner join servis on musteri.id = servis.cariid

     

     

Toplam Hit: 1644 Toplam Mesaj: 11
sql sorgu