با استفاده از تابع 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 را مدیریت نمایید.

توسط پژوهشگر در 201 روز قبل ساعت 03:30
دسته بندی ها: MySQL MySQL for beginner
arman در 201 روز قبل ساعت 06:15

برای استخراج نام کاربری قبل از '@' و دامنه بعد از '@' از تابع SUBSTRING_INDEX استفاده کنید: count=1 برای نام کاربری و count=-1 برای دامنه. برای پایداری بهتر، از TRIM استفاده کنید و دامنه را به حروف کوچک تبدیل کنید تا یکسان‌سازی حروف انجام شود. در نظر بگیرید که ایمیل‌های NULL یا بدون '@' می‌توانند خروجی نامعتبری بدهند؛ با استفاده از COALESCE و قراردادن شرط WHERE email LIKE '%@%' این مورد را مدیریت کنید. می‌توانید دو ستون را با aliases user_name و domain در یک SELECT بازگردانید.

گزارش

1 پاسخ

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

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