با استفاده از تابع RIGHT در MySQL، برای تمام ردیفهای جدول files آخرین ۳ کاراکتر ستون filename را استخراج کنید تا پسوند فایل بدست آید.
5.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 01:59 0.0
در MySQL از تابع RIGHT(column, n) برای گرفتن n کاراکتر از انتهای یک رشته استفاده کنید؛ مثلاً SELECT RIGHT(filename, 3) AS extension FROM files; برای نرمالسازی میتوانید از LOWER() یا TRIM() قبل از RIGHT استفاده کنید و مراقب مقادیر NULL یا نامهایی با طول کمتر از ۳ باشید. اگر پسوندها طول متغیر دارند، ترکیب RIGHT با INSTR/LOCATE یا SUBSTRING_INDEX برای جداکردن بر اساس نقطه مفید خواهد بود.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
RIGHT(filename, 3) فقط زمانی دقیق است که پسوند سه کاراکتر باشد. برای پسوندهای با طول متغیر، بهتر است از SUBSTRING_INDEX(filename, '.', -1) استفاده کنید تا پسوند واقعی از آخرین نقطه گرفته شود. قبل از استخراج میتوانید با LOWER() یا TRIM() استانداردسازی کنید و به مقادیر NULL یا رشتههای کوتاهتر از ۳ کاراکتر توجه کنید. در مواردی که نام فایل چندین نقطه دارد یا بدون نقطه است، ترکیب توابع INSTR/LOCATE یا CASE میتواند نتیجه را درست کند.
گزارش