با استفاده از تابع COUNT در MySQL، تعداد سفارشهای هر customer_id را از جدول orders محاسبه و همراه customer_id نمایش دهید.
7.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:45 0.0
برای حل این مسئله از تابع تجمعی COUNT به همراه GROUP BY استفاده کنید؛ مثلاً SELECT customer_id, COUNT(*) AS order_count FROM orders GROUP BY customer_id؛ در MySQL میتوانید از COUNT(*) برای شمارش سطرها و از COUNT(column) برای شمارش مقادیر غیر NULL استفاده کنید. نکات مفید: برای مرتبسازی نتایج از ORDER BY order_count DESC استفاده کنید و اگر بخواهید مشتریهایی که سفارش ندارند را هم ببینید، از LEFT JOIN با جدول customers استفاده کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای هر customer_id در جدول orders با استفاده از COUNT(*) و GROUP BY، تعداد سفارشها را بهراحتی میتوانید به دست آورید. توجه کنید COUNT(column) فقط مقادیر NON NULL را میشمارد، پس اگر ستون سفارش خاصی NULL میتواند باشد از COUNT(*) استفاده کنید. برای نمایش مشتریان با سفارش صفر هم میتوانید از LEFT JOIN با جدول customers استفاده کنید و با COALESCE مقدار 0 را نشان دهید. نهایتاً با ORDER BY order_count DESC نتایج را به ترتیب بیشترین سفارشها مرتب کنید.
گزارش