PDA

View Full Version : سوال: مشكل در دستور هاي تودرتو و دستور Group By



S.Allahyari
دوشنبه 14 بهمن 1387, 12:15 عصر
من برای پیدا کرن اینکه هر شماره حساب چند تا تراکنش رو انجام داده این دستور رو نوشتم :

select

account_id,Count(*)as count_transaction from tbl_transaction groupby account_id


نتیجه این دستور یک جدول با ستون های شماره حساب و تعداد تراکنش ها شد. مثلا : شماره حساب 126463 = تعداد 20 تراکنش و ...
حالا من میخوام دستوری بنویسم که شماره حسابی رو که بیشترین تراکنش رو داشته برام نمایش بده ...
من این ستور رو می نویسم:





select account_id,max(count_transaction)as max from
as table1(دستور بالا)

ولی با پیغام خطای زیر مواجه میشم:
Column 'table1.account_id' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.

اگر میشه من رو راهنمایی کنید...!؟!؟!؟!؟
ضمناً جدول تراکنش ها شامل فیلدهای شماره حساب،کد شعبه،کد بانک،تاریخ تراکنش،نوع تراکنش است.
با تشکر.

حامد مصافی
دوشنبه 14 بهمن 1387, 13:10 عصر
هر چند account_id در select اول گروهبندی میشه و منحصربفرده اما در select دوم و از نظر پردازنده table1 یک ورودی table parse است که به مظنور قرار گیری در این نوع select باشد فیلد account_id آن گروهبندی شود.

با توجه به استنباط من از سناریوی شما این پرس و جو احتمالاً جواب شماست.


SELECT TOP 1 tbl_transaction.account_id, Count(tbl_transaction.account_id) AS CountOfaccount_id
FROM tbl_transaction
GROUP BY tbl_transaction.account_id
ORDER BY Count(tbl_transaction.account_id) DESC;

S.Allahyari
دوشنبه 14 بهمن 1387, 22:04 عصر
هر چند account_id در select اول گروهبندی میشه و منحصربفرده اما در select دوم و از نظر پردازنده table1 یک ورودی table parse است که به مظنور قرار گیری در این نوع select باشد فیلد account_id آن گروهبندی شود.

با توجه به استنباط من از سناریوی شما این پرس و جو احتمالاً جواب شماست.


SELECT TOP 1 tbl_transaction.account_id, Count(tbl_transaction.account_id) AS CountOfaccount_id
FROM tbl_transaction
GROUP BY tbl_transaction.account_id
ORDER BY Count(tbl_transaction.account_id) DESC;

بسیار بسیار مچکرم از راهنمایی شما.
کارم رو راه انداختید.
واقعا ممنون.



خدایه اطلسی ها با تو باشد پناه بی کسی ها باتو باشد


تمام لحظه های عمر من بجز دل واپسی ها با تو باشد
ممنون.