PDA

View Full Version : نمایش مجموع فیلدهای تکراری



hamide_kh
سه شنبه 22 آبان 1386, 18:02 عصر
سلام
من دارم یک برنامه می نویسم که دارای چندین جدول هست ....برای گزارش گیری باید از تمام جدولهام رکوردهایی را دریافت کنم و به جدول مربوط به گزارش گیریم بریزم...در جدول گزارش گیریم دو تا فیلد وجود داره (nameو meghdar)که فیلد name دارای رکورهای تکراری هست حالا من می خوام در زمان گزارش گیری فیلد meghdar رکوردهایی که فیلد nameشان یکی هست با هم جمع بشوند مثل زیر:
مثلا اگه 10 تا فیلد به اسم a وجود داره در زمان گزارش گیری جمع مقدار aها را نمایش بده

JAFO_IRAN
سه شنبه 22 آبان 1386, 18:33 عصر
select name, sum(meghdar) from YourTableName
group by name

SYNDROME
سه شنبه 22 آبان 1386, 20:26 عصر
select name, sum(meghdar) from YourTableName
group by name


با احترام
نام فیلد مجموع را مشخص نکردید.


select name, sum(meghdar) As Summeghdar from YourTableName
group by name

موفق باشید

hamide_kh
شنبه 26 آبان 1386, 19:34 عصر
سلام
ببخشید چند روز نتونستم بایم
چک می کنم خبرش را بهتون می دم

hamide_kh
یک شنبه 27 آبان 1386, 21:34 عصر
سلام
ببخشید ولی من فکر میکنم این کد شما تمام رکوردهای فیلد meghdar را با هم جمع می کنه ...اما من می خوام فقط رکوردهایی که فیلد name شان یکی هست با هم جمع بشوند

farhad110
دوشنبه 28 آبان 1386, 08:13 صبح
با سلام. از کد زیر استفاده کنید

select name,count(name) from table group by name having count(name)>=2

SYNDROME
دوشنبه 28 آبان 1386, 08:52 صبح
این را هم امتحان کنم.


select name, sum(*) As CountName from YourTableName
group by name

موفق باشید

hamide_kh
دوشنبه 01 بهمن 1386, 23:03 عصر
با عرض سلام
چند وقت بود که لازم نداشتم از این کدهای شما استفاده کنم ولی دوباره مجبور شدم که استفاده کنم کدهای شما در dbgrid به من جواب داد ولی یه مشکلی هست که من می خوام بعد از اجرای کوئری گزارش گیری کنم و یه فیلد هم به اسم meghdar دارم که می خوام جمع اونا را برام در صفحه گزارش نشون بده ولی وقتی گزارش را اجرا می کنم پیغام خطا میده که (field not found) البته با fast گزارشهام را می سازم شما چه راه جلی پیشنهاد می کنید.
مثلا من 2 تا فیلد دارم یکی name و دیگری meghdar
این هم از کدهام
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select sharh,sum(meghdar) from table1 GROUP BY sharh');
ADOQuery1.Open;
ممنون

SYNDROME
سه شنبه 02 بهمن 1386, 09:37 صبح
دستورتان را به شکل زیر بنویسید.


select sharh,sum(meghdar) as meghdar from table1 GROUP BY sharh

موفق باشید

hamide_kh
جمعه 05 بهمن 1386, 14:28 عصر
یا سلام دوباره
حالا من اگه بخوام بازم فیلد های دیگه بهش اضافه کنم و بر اساس 2 تا فیلد مثلا شرح و واحد گروه بندی کنم مشکلی پیش میاد

hamide_kh
شنبه 06 بهمن 1386, 15:53 عصر
سلام
syndrome عزیز منتظر پاسختان هستم

SYNDROME
شنبه 06 بهمن 1386, 17:16 عصر
حالا من اگه بخوام بازم فیلد های دیگه بهش اضافه کنم و بر اساس 2 تا فیلد مثلا شرح و واحد گروه بندی کنم مشکلی پیش میاد

خوب به این شکل بنویسید.


select sharh,Vahed,sum(meghdar) as meghdar from table1 GROUP BY sharh,Vahed

موفق باشید

hamide_kh
یک شنبه 07 بهمن 1386, 13:46 عصر
ممنون من هم این طور نوشتم فقط می خواستم ببینم مشکلی نداره