یک پرسوجو بنویسید که نام تمام مشتریانی را که طول رشتهٔ فیلد email آنها با استفاده از تابع CHAR_LENGTH بیشتر از 20 کاراکتر است نمایش دهد.
2.0 بازدید آخرین ویرایش در 203 روز قبل ساعت 02:34 0.0
برای حل این مسئله از MySQL استفاده کنید و تابع CHAR_LENGTH را در قسمت WHERE به کار ببرید، مثلاً SELECT name FROM customers WHERE CHAR_LENGTH(email) > 20;. نکته: CHAR_LENGTH تعداد کاراکترها را میشمارد (برای تعداد بایتها از LENGTH استفاده کنید) و اگر بخواهید فاصلههای اضافی را نادیده بگیرید میتوانید از TRIM قبل از CHAR_LENGTH استفاده کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
نکتهٔ اصلی این است که با استفاده از WHERE CHAR_LENGTH(email) > 20 در MySQL میتوانید نام مشتریانی را نمایش دهید که طول ایمیلشان بیش از بیست کاراکتر است. برای نادیده گرفتن فاصلههای اضافی در ابتدای یا انتهای رشته، میتوانید از TRIM(email) قبل از CHAR_LENGTH استفاده کنید: WHERE CHAR_LENGTH(TRIM(email)) > 20. توجه کنید CHAR_LENGTH فقط تعداد کاراکترها را میشمارد و LENGTH تعداد بایتها را برمیگرداند، بنابراین اگر ایمیلها شامل کاراکترهای چندبایتی هستند دقت کنید. و در صورتِ وجود مقادیر NULL برای ایمیل، از COALESCE(email, '') یا شرط IS NOT NULL در کوئری استفاده کنید.
گزارش