MSSQL tablosunda sayisal bir sütunun toplamını alıp değişkene atamak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
izmirlikemal
Üye
Mesajlar: 155
Kayıt: 10 Oca 2014 01:08
Konum: izmir/Buca

MSSQL tablosunda sayisal bir sütunun toplamını alıp değişkene atamak

Mesaj gönderen izmirlikemal » 30 Kas 2017 01:50

Merhaba
Arkadaşlar ben daha önce Paradox veri tabanında data'larımı saklıyordum. Ancak şimdi MSSQL ile bu işi yapmaya çalışırken bazı sorunlarım (acemilikten) oldu.
Veri tabanında 2 adet kayıt var ;
1- Kayit_ID (int) primary key
2- Sayi (int)

bu sayi sütunundaki örneğin 10 adet veriyi toplayıp delphi de bir değişkene atamak istiyorum.
yazdığım kısa kodlar(google dan yardım alarak):

begin
ADOQuery1.Open;
ADOQuery1.Close;
ADOQuery1.SQL.add('SELECT SUM(sayi) FROM sayilar GROUP BY Kat_ID');
ADOQuery1.Open;
end;
NOT:Adoquery1.Open cümlesi 2 tane bunlardan hangi satırdakini kullanmak gerekiyor;
Bu problemleri bir türlü çözüp sum(sayi) toplamını delphi de değişkene atayamadım.
Konuya vakıf arkadaşlarımın yardımını bekliyorum.

ertank
Üye
Mesajlar: 1171
Kayıt: 11 Eyl 2015 11:45

Re: MSSQL tablosunda sayisal bir sütunun toplamını alıp değişkene atamak

Mesaj gönderen ertank » 30 Kas 2017 02:11

Merhaba,

Aşağıdaki şekilde çalışıyor olması gerekli.

Kod: Tümünü seç

begin
  ADOQuery1.Close();
  ADOQuery1.SQL.Text := 'SELECT SUM(sayi) FROM sayilar GROUP BY Kat_ID';
  ADOQuery1.Open();
end;

Kullanıcı avatarı
csunguray
Üye
Mesajlar: 846
Kayıt: 09 Ara 2006 05:08
Konum: Adana
İletişim:

Re: MSSQL tablosunda sayisal bir sütunun toplamını alıp değişkene atamak

Mesaj gönderen csunguray » 30 Kas 2017 08:07

izmirlikemal yazdı:
30 Kas 2017 01:50
Bu problemleri bir türlü çözüp sum(sayi) toplamını delphi de değişkene atayamadım.
Program hiç derlenmiyor mu? Bir hata mesajı mı alıyorsunuz? Program hatasız çalışıyor da istediğiniz sonucu mu üretmiyor? Bir hata mesajı alıyorsanız aldığınız hata mesajı nedir?
izmirlikemal yazdı:
30 Kas 2017 01:50
Veri tabanında 2 adet kayıt var ;
İki adet KAYIT mı var yoksa iki adet ALAN (sütun, field) mı var? Sadece listede belirttiğiniz iki adet alanınız varsa group by'da kullandığınız Kat_ID isimli bir alanınız var mı yok mu?
C. Sunguray
csunguray at netbilisim.kom
Net Bilişim Hizmetleri

Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)

Kullanıcı avatarı
tuna
Üye
Mesajlar: 294
Kayıt: 07 Tem 2008 03:39
Konum: İstanbul

Re: MSSQL tablosunda sayisal bir sütunun toplamını alıp değişkene atamak

Mesaj gönderen tuna » 01 Ara 2017 10:20

var
sayitoplami:int;
begin
ADOQuery1.Close();
ADOQuery1.SQL.Text := 'SELECT SUM(sayi) as toplam FROM sayilar ';
ADOQuery1.Open();

sayitoplami:=ADOQuery1.fieldbyname('toplam').asinteger;
end;

group by ı eklemdim çünkü group by ı eklerseniz ilgili id lerin toplamını alır benim yazığım gibi yaparsanız tüm sayi alanlarının toplamını tek sonuç olarak döner. Kullanımınıza göre değiştirebilirsiniz.

Kolay gelsin.

izmirlikemal
Üye
Mesajlar: 155
Kayıt: 10 Oca 2014 01:08
Konum: izmir/Buca

Re: MSSQL tablosunda sayisal bir sütunun toplamını alıp değişkene atamak

Mesaj gönderen izmirlikemal » 10 Ara 2017 01:34

csunguray, tuna, ertank arkadaşlarım problemi çözdüm.İlginize teşekkür ederim

Cevapla