ورود

View Full Version : مشکل در استفاده SUM و SELECT



NasimBamdad
چهارشنبه 02 شهریور 1390, 12:57 عصر
من این کوری رو دارم ، اما زمانی که اجراش می کنم خطای ذیل رو دریافت می کنم

INSERT INTO invoice_daroo_azad_total(patientid,price_total)
SELECT patientid, SUM(price_daroo)
FROM invoice_daroo_azad
where patientid = 90259



خطا :


Msg 8120, Level 16, State 1, Line 1
Column 'invoice_daroo_azad.patientid' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.


هدف من این هست که ستون price_daroo در جدول invoice_daroo_azad رو SUM کنم و در ستون price_total در جدول invoice_daroo_azad_total قرار بدم ،

توضیح :

تصویر جدول invoice_daroo_azad ( مبدا )

http://0000.2.img98.net/out.php/i20653_1.gif

تصویر جدول inovice_daroo_azad_total ( مقصد )

http://0000.2.img98.net/out.php/i20654_2.gif


ستون patientid مقدار یکسان و منحصر به فردی در تمامی جداول دارد که شماره پرونده هر بیمار می باشد

شرط من هم در این کوری شماره پرونده یا همون patientid هست ، که هزینه دارو های استفاده شده برای هر بیمار رو SUM کنیم ( بر اساس شرط patientid ) و در جدول invoice_daroo_azad_total قرار بدیم که نشان دهنده SUM کل هزینه دارو های استفاده شده بیمار هست


به نظر شما بهترین کار چی هست ، من از C# استفاده می کنم برای برنامه و Microsoft SQL Server 2005 هم دیتابیسم هست

mehran_sh_t
چهارشنبه 02 شهریور 1390, 13:51 عصر
INSERT INTO invoice_daroo_azad_total(patientid,price_total)
SELECT patientid, SUM(price_daroo)
FROM invoice_daroo_azad
where patientid = 90259
GROUP BY patientid




فکر کنم اگر خط آخر رو اضافه کنید جواب بده

NasimBamdad
چهارشنبه 02 شهریور 1390, 14:08 عصر
INSERT INTO invoice_daroo_azad_total(patientid,price_total)
SELECT patientid, SUM(price_daroo)
FROM invoice_daroo_azad
where patientid = 90259
GROUP BY patientid




فکر کنم اگر خط آخر رو اضافه کنید جواب بده

Thank Your , yeah it works