یک پرس‌وجو MySQL بنویسید که ستون unix_ts در جدول events را با استفاده از تابع FROM_UNIXTIME به زمان خوانا تبدیل کند و ستون‌های id و name را به همراه زمان تبدیل‌شده نمایش دهد.

1.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 01:46

0.0

برای حل این مسئله از تابع FROM_UNIXTIME(unix_ts) استفاده کنید که مقدار زمان یونیکس (ثانیه‌ای) را به نوع DATETIME تبدیل می‌کند؛ نمونه پرس‌وجو: SELECT id, name, FROM_UNIXTIME(unix_ts) AS event_time FROM events;. اگر می‌خواهید قالب خروجی را مشخص کنید از DATE_FORMAT(FROM_UNIXTIME(unix_ts), '%Y-%m-%d %H:%i:%s') استفاده کنید. یک نکته مهم: اگر timestamp شما میلی‌ثانیه است آن را بر 1000 تقسیم کنید (unix_ts/1000) تا مقدار صحیح برای FROM_UNIXTIME بدست آید؛ همچنین می‌توانید روی نتیجه WHERE یا ORDER BY اعمال کنید تا خروجی مورد نظر را محدود یا مرتب نمایید.

توسط پژوهشگر در 220 روز قبل ساعت 01:46
دسته بندی ها: MySQL MySQL for beginner
nima در 220 روز قبل ساعت 12:03

نکته مهم: اگر مقدار unix_ts شما به میلی‌ثانیه است، قبل از استفاده از FROM_UNIXTIME آن را بر 1000 تقسیم کنید تا مقدار صحیح زمانی به دست آید. برای نمایش با قالب دقیق‌تر می‌توانید از DATE_FORMAT(FROM_UNIXTIME(unix_ts/1000), '%Y-%m-%d %H:%i:%s') استفاده کنید تا ستون زمان با قالب readable نمایش داده شود و id و name همراه باشد. اگر فقط تاریخ را می‌خواهید، می‌توانید از DATE_FORMAT(..., '%Y-%m-%d') استفاده کنید. همچنین می‌توانید با اضافه کردن WHERE یا ORDER BY بر اساس unix_ts/1000 خروجی را فیلتر یا مرتب کنید.

گزارش

1 پاسخ

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

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