PDA

View Full Version : نحوه نوشتن یک کوئری براس مثال زیر



mohsen_metn
یک شنبه 05 اردیبهشت 1389, 12:39 عصر
سلام
من برای مثال زیر می خواهم یک کوئری بهینه بنویسم. خودم از کرسر استفاده کردن ولی خسلی کند است لطفا کمک کنید
ما یک جدول داریم که اطلاعات مشتریان در اون ثبت میشه و یک جدول هم که اطلاعات کالا در اون ثبت میشه
1 - اطلاعات 100 مشتری که بیشترین خرید رو کرده اند
2 - اطلاعت شهری که بسترین خرید رو داشته است

محمد سلیم آبادی
یک شنبه 05 اردیبهشت 1389, 12:47 عصر
سلام،
می تونید یک نمونه از داده ها و ساختار جداولتون را ارسال کنید؟

محمد سلیم آبادی
یک شنبه 05 اردیبهشت 1389, 13:14 عصر
SELECT c.*
FROM Customers AS c
INNER JOIN (
SELECT TOP 100 c.customerid
FROM customers AS c
INNER JOIN orders AS o
ON c.customer_id = o.customer_id
GROUP BY c.customer_id
ORDER BY COUNT(*) DESC) AS D(id)
ON c.customer_id = D.id




SELECT TOP 1 city
FROM customers c INNER JOIN orders o ON c.customer_id = o.customerid
GROUP BY city
ORDER BY COUNT(*) DESC

mohsen_metn
یک شنبه 05 اردیبهشت 1389, 13:27 عصر
SELECT c.*
FROM Customers AS c
INNER JOIN (
SELECT TOP 100 c.customerid
FROM customers AS c
INNER JOIN orders AS o
ON c.customer_id = o.customer_id
GROUP BY c.customer_id
ORDER BY COUNT(*) DESC) AS D(id)
ON c.customer_id = D.id




SELECT TOP 1 city
FROM customers c INNER JOIN orders o ON c.customer_id = o.customerid
GROUP BY city
ORDER BY COUNT(*) DESC

میشه یکم توضیح بدهید؟

محمد سلیم آبادی
یک شنبه 05 اردیبهشت 1389, 13:34 عصر
مساله ی اول:
گفته شده است که 100 نفری که بیشترین سفارش را دارن بدست آورده شود.
ابتدا بر اساس ستون کد مشتری در جدول سفارش ها گروه بندی می کنیم و سپس بر اساس تعداد سفارش هر مشتری به صورت نزولی مرتب سازی می کنیم و در نهایت 100 نفر که اول لیست هستند انتخاب می شوند.

مساله ی دوم:
این بار بر اساس شهر گروه بندی می کنیم...