REPLACE و TRIM
جزء من قسم ما وراء الأساسيات في رحلة SQL على Coddy — الدرس 9 من 27.
REPLACE(s, find, with) يستبدل كل ظهور لـ find في s بـ with:
REPLACE('555-123-4567', '-', '') -- '5551234567'TRIM(s) يزيل المسافات البيضاء من كلا الطرفين. مرر وسيطًا ثانيًا لإزالة أحرف أخرى، واستخدم LTRIM / RTRIM للإزالة من جانب واحد:
TRIM(' hi ') -- 'hi'
TRIM('---hi---', '-') -- 'hi'إليك كيفية تنظيف بيانات الأعمدة بشكل مباشر دون تحديث الجدول.
التحدي
سهلالجداول والأعمدة المتاحة:
<strong>contacts</strong>:<strong>id</strong>,<strong>phone</strong>
كل phone قد يتضمن مسافات بادئة/خاتمة وأي عدد من فواصل -. أرجع id وعمود clean مع إزالة كافة المسافات والشرطات. رتب حسب id.
ورقة مرجعية
REPLACE(s, find, with) تستبدل كل تكرار لسلسلة فرعية:
REPLACE('555-123-4567', '-', '') -- '5551234567'TRIM(s) تزيل المسافات البيضاء من كلا الطرفين؛ قم بتمرير وسيط ثانٍ لإزالة أحرف أخرى. استخدم LTRIM / RTRIM للإزالة من جانب واحد:
TRIM(' hi ') -- 'hi'
TRIM('---hi---', '-') -- 'hi'يمكن تداخل الدوال لتطبيق عمليات تنظيف متعددة في وقت واحد:
SELECT REPLACE(TRIM(phone), '-', '') AS clean FROM contacts;جرّب بنفسك
SELECT id,
-- إزالة المسافات والشرطات
FROM contacts
ORDER BY id
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.