PDA

View Full Version : بدست آوردن فاکتور با بیشترین مبلغ



ghasem110deh
چهارشنبه 06 آبان 1394, 15:21 عصر
سلام به همه ...
دوستان من واسه بدست آرودن فاکتوری که بیشترین مبلغ رو داره از کوئری زیر استفاده کردم :


select * from (select Invoice_Id, Sum(Quantity * Unit_Price) AS Total_Sum, count(Id) AS Order_Count
from View_Invoice group by Invoice_Id) Q order by Q.Total_Sum DESC;


که خروجی از این ویو هستش : (تصویر ضمیمه)
منتها دو تا مشکل هست ، یکی اینکه وقتی فیلد Name رو کوئری بالا میارم خطای invalid میده که همچین فیلدی وجود نداره
و دوم اینکه الان خروجی کوئری کل فاکتورهاست (ولی درسته یعنی اولین سطر مبلغ فاکتورش از همه بیشتر) ... وقتی از (1) Top استفاده میکنم سطر ششم رو میاره (که مبلغ کمتری داره)

golbafan
پنج شنبه 07 آبان 1394, 22:52 عصر
1- چون 2 تا فیلد name از دو جدول داری باید برای تولید view جدول رو هم مشخص کنی به این صورت: [tbl_1].[name] as name1
2- باید کل کوئری رو بعنوان یک جدول در نظر بگیری و سپس top(1) رو استفاده کنی. همچنین میتونی از select max استفاده کنی: select top1 from (your query) Q2