با استفاده از تابع VAR_SAMP مقدار واریانس نمونهای ستون salary را برای هر department در جدول employees محاسبه کرده و نتایج را به ترتیب صعودی نمایش دهید.
6.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:44 0.0
برای حل این مسئله از MySQL و تابع تجمعی VAR_SAMP استفاده کنید: با SELECT ستون department و VAR_SAMP(salary) به همراه GROUP BY department مقادیر واریانس نمونهای هر گروه را محاسبه کنید و با ORDER BY نتیجه را صعودی مرتب کنید. توجه کنید که VAR_SAMP مقادیر NULL را نادیده میگیرد و در صورت نیاز میتوانید مقدار salary را با CAST به DECIMAL تبدیل کنید تا دقت عددی بهتر حفظ شود؛ نمونه پرسوجو: SELECT department, VAR_SAMP(CAST(salary AS DECIMAL(10,2))) AS var_salary FROM employees GROUP BY department ORDER BY var_salary ASC.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
ایده خوب است: برای هر دپارتمان واریانس نمونهای salary را با VAR_SAMP محاسبه کنید و نتیجه را با ORDER BY صعودی مرتب کنید. توجه کنید که باید salary را به نوع عددی مثل DECIMAL تبدیل کنید تا دقت محاسبه حفظ شود و NULLها نادیده گرفته شوند. همچنین اگر در یک گروه تنها یک مقدار non-null باشد یا همه مقادیر NULL باشند، VAR_SAMP NULL برمیگرداند؛ میتوانید با HAVING COUNT(salary) > 1 نتیجههای معنیدار را فیلتر کنید یا مقدار NULL را با IFNULL به مقدار دلخواه تبدیل کنید. اگر میخواهید محدوده گروهها را محدود کنید، شرط WHERE department IS NOT NULL را اضافه کنید.
گزارش