با استفاده از تابع SUBSTRING_INDEX یک پرسوجو بنویسید که در جدول users ستون email را گرفته و نام کاربری (قبل از '@') و دامنه (بعد از '@') را بهصورت دو ستون user_name و domain استخراج کند.
4.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:30 0.0
برای حل این مسئله در MySQL از تابع SUBSTRING_INDEX(str, delim, count) استفاده کنید: با count=1 برای گرفتن قسمت قبل از اولین '@' (نام کاربری) و با count=-1 برای گرفتن قسمت بعد از آخرین '@' (دامنه). پرسوجو را با SELECT بنویسید روی جدول users؛ میتوانید از TRIM برای حذف فاصلههای اضافی یا LOWER برای یکسانسازی حروف دامنه استفاده کنید و در صورت نیاز با COALESCE مقادیر NULL را مدیریت نمایید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای استخراج نام کاربری قبل از '@' و دامنه بعد از '@' از تابع SUBSTRING_INDEX استفاده کنید: count=1 برای نام کاربری و count=-1 برای دامنه. برای پایداری بهتر، از TRIM استفاده کنید و دامنه را به حروف کوچک تبدیل کنید تا یکسانسازی حروف انجام شود. در نظر بگیرید که ایمیلهای NULL یا بدون '@' میتوانند خروجی نامعتبری بدهند؛ با استفاده از COALESCE و قراردادن شرط WHERE email LIKE '%@%' این مورد را مدیریت کنید. میتوانید دو ستون را با aliases user_name و domain در یک SELECT بازگردانید.
گزارش