سلام ما در یک جدول مشخصات داریم با کدمشخص و دریک جدول اجناس . یک جدول ساختیم که کد فرد و خرید هاش رو وارد میکنه . حالا یک کوئری میخوام که تعداد خریدهای افراد رو محاسبه بکنه و بگه کدوم نفر بیشترین خرید رو داشته .ممنون
Printable View
سلام ما در یک جدول مشخصات داریم با کدمشخص و دریک جدول اجناس . یک جدول ساختیم که کد فرد و خرید هاش رو وارد میکنه . حالا یک کوئری میخوام که تعداد خریدهای افراد رو محاسبه بکنه و بگه کدوم نفر بیشترین خرید رو داشته .ممنون
سلام و روز خوش
توی سیستم بگردین - یک دیتابیس نمونه northwind.accdb پیدا میکنین.
کافی هست همین دیتابیس رو با دقت بررسی کنین.
سلام
امیدوارم این نمونه فایل بدردتون بخوره
بسیار ممنون و تشکر فراوان .
لطفا فراوان نمودید .
برای محاسبه تعداد خریدهای هر فرد و پیدا کردن نفری که بیشترین خرید را داشته است، میتوانید از دستورات SQL و یک کوئری گروهبندی (GROUP BY) استفاده کنید. در ادامه، یک کوئری SQL برای انجام این کار آورده شده است:
SELECT
p.PersonCode, -- کد فرد
p.FirstName, -- نام فرد (اگر در جدول مشخصات وجود دارد)
p.LastName, -- نام خانوادگی فرد (اگر در جدول مشخصات وجود دارد)
COUNT(o.PurchaseID) AS TotalPurchases -- تعداد خریدها
FROM
Persons AS p -- جدول مشخصات افراد
LEFT JOIN
Orders AS o -- جدول خریدها
ON
p.PersonCode = o.PersonCode -- ارتباط بین جدول مشخصات و جدول خریدها
GROUP BY
p.PersonCode, p.FirstName, p.LastName -- گروهبندی بر اساس کد فرد و نامها
ORDER BY
TotalPurchases DESC -- مرتبسازی نزولی بر اساس تعداد خریدها
LIMIT 1; -- بازهبندی نتایج تا یک ردیف (نفر بیشترین خرید را دارد)
توجه داشته باشید که در کوئری بالا، جدول مشخصات افراد به نام Persons و جدول خریدها به نام Orders فرض شده است. شما باید نام جداول و نام ستونها را با نامهای دقیق جداول و ستونهای خود تطبیق دهید. این کوئری تعداد خریدها را برای هر فرد محاسبه میکند و نتایج را بر اساس تعداد خریدها به ترتیب نزولی مرتب میکند. با استفاده از LIMIT 1 میتوانید نفری که بیشترین تعداد خرید را داشته است را دریافت کنید. اگر نام و نام خانوادگی هر فرد را هم داخل جدول مشخصات داشته باشید، میتوانید این اطلاعات را نیز به نتیجه اضافه کنید.
سلام من کلید بین دو جدول رو از نوع تکس گذاشتم چند بار تست کردم نشد امکانش هست dsum را با شرط اینکه فیلد از نوع تکس باشه بنویسید . در مثال از نوع int هست و خوب جواب داد ولی تکس کوثیشن گذاشتم نشد .
سلام
نمونه فایل خدمت شما
سلام
clng منظور چیست ؟
وقتی بدون دانستن اصول کار از هوش ساختگی کمک میگیرین نتیجه اش این میشه که پاسخ نادرست میدین!
اون limit برای mysql هست و نه در access و نه در mssql کار نمیکنه!
دست کم یک دور پاسخ هوش ساختگی رو بخونین،
و اگر دانش کافی برای بررسی کد ندارین ، اون رو اجرا کنین تا درست بودنش و ایرادهاش مشخص بشه .
یعنی covert to long
بخاطر سورت استفاده کردم تا خروجی total به عدد تبدیل بشه و درست سورت کنه
ضمیمه 154920
سلام لطفا این مثال رو ببینید ایراد از چیست ؟
در کوئری فقط جدول t1 بیارد (جدول مادر)
کد هم تو نمونه نگاه کنید
بسیار نکته خوبی بود . ممنون
سلام
این کد رو برای بالای 100 خرید میخواد انجام بده sort نمیکنه . فقط روی هر cod جمع کل خرید ها رو نشون میده ولی sort از بزرگ به کوچیک نمیکنه !
ممنون
سلام
من تست کردم درست جواب میده شما فایلتون بذارید تا بررسی شود.