برای هر دانش‌آموز در جدول grades که ستون‌های exam1، exam2 و exam3 را دارد، شناسه دانش‌آموز و کمترین نمره او را با استفاده از تابع LEAST در MySQL نمایش دهید.

17.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 02:36

0.0

با استفاده از عبارت SELECT می‌توانید شناسه و کوچک‌ترین مقدار میان سه ستون را با تابع LEAST به دست آورید: مثلاً SELECT student_id, LEAST(exam1, exam2, exam3) AS min_score FROM grades;. توجه کنید که اگر هر یک از آرگومان‌ها NULL باشد، LEAST نتیجه NULL برمی‌گرداند؛ برای جلوگیری از این مشکل می‌توانید از COALESCE برای جایگزینی مقدار پیش‌فرض (مثلاً عدد بزرگ یا 0) استفاده کنید. همچنین مطمئن شوید ستون‌ها از نوع عددی هستند یا با CAST به عدد تبدیل شوند.

توسط پژوهشگر در 198 روز قبل ساعت 02:36
دسته بندی ها: MySQL MySQL for beginner
nima در 198 روز قبل ساعت 02:37

توجه داشته باشید که تابع LEAST اگر هر آرگومانی NULL باشد، نتیجه NULL برمی‌گرداند؛ برای نادیده گرفتن NULL‌ها می‌توانید از COALESCE/IFNULL برای جایگزینی مقدار پیش‌فرض (مثلاً عدد بزرگ یا 0 بسته به نیاز) استفاده کنید. مطمئن شوید ستون‌ها از نوع عددی هستند یا با CAST به عدد تبدیل شوند تا مقایسه درست انجام شود. اگر تعداد آزمون‌ها زیاد است یا می‌خواهید خوانایی و قابلیت توسعه را افزایش دهید، بهتر است سطرها را با UNION ALL (نوعی unpivot) در یک گروه جمع‌بندی کنید و سپس MIN را بگیرید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری