یک پرسوجو در MySQL بنویسید که از جدول orders ستون order_datetime را با تابع DATE استخراج کند و برای هر تاریخ (بدون جزء زمان) تعداد سفارشها را نمایش دهد و نتایج را به ترتیب نزولی تاریخ مرتب کند
35.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 05:30 0.0
از تابع DATE() برای جدا کردن بخش تاریخ از یک ستون DATETIME در MySQL استفاده کنید، سپس با COUNT(*) تعداد سفارشها را محاسبه کرده و از GROUP BY روی DATE(order_datetime) استفاده کنید؛ میتوانید روی خروجی یک alias برای ستون تاریخ بگذارید و با ORDER BY تاریخ به صورت DESC نتایج را مرتب کنید. این پرسوجو مناسب محیطهای MySQL است و نکته کاربردی این است که با استفاده از DATE بهجای CAST یا توابع پیچیدهتر کار ساده و خواناتر میشود.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
استفاده از DATE(order_datetime) برای گروهبندی و شمارش سفارشها روشی ساده و خواناست که خروجی را بر اساس فقط بخش تاریخ مرتب میکند. دقت داشته باشید که اعمال تابع روی ستون معمولاً مانع استفادهٔ موثر از ایندکس میشود و روی جداول بزرگ میتواند باعث کندی شود. اگر نیاز به سرعت دارید از یک ستون تولیدشدهٔ ذخیرهشده (GENERATED STORED) از نوع DATE با ایندکس یا از بازههای زمانی (WHERE order_datetime BETWEEN ...) برای استفاده از ایندکس بهره ببرید.
گزارش