الـ String Functions في SQL هي دوال بتتعامل مع البيانات النصية (strings)، وبتساعدك في إجراء عمليات مختلفة على النصوص زي التقطيع، التحويل، البحث، وغيرهم. دي بعض من أشهر الـ String Functions في SQL مع شرح مختصر عن كل واحدة:
أشهر الـ String Functions:
1. LEN():
- وظيفتها: بتحدد طول السلسلة النصية (عدد الأحرف).
- مثال:
SELECT LEN('Hello World');
النتيجة هتكون 11 لأن “Hello World” مكونة من 11 حرف.
2. LEFT():
- وظيفتها: بتستخرج عدد معين من الأحرف من بداية النص.
- مثال:
SELECT LEFT('Hello World', 5);
النتيجة هتكون Hello لأن الدالة بتاخد أول 5 أحرف من النص.
3. RIGHT():
- وظيفتها: بتستخرج عدد معين من الأحرف من نهاية النص.
- مثال:
SELECT RIGHT('Hello World', 5);
النتيجة هتكون World لأن الدالة بتاخد آخر 5 أحرف من النص.
4. SUBSTRING():
- وظيفتها: بتستخرج جزء من النص بناءً على موقع البداية وعدد الأحرف.
- مثال:
SELECT SUBSTRING('Hello World', 7, 5);
النتيجة هتكون World لأن الدالة بتبدأ من الحرف السابع وتستخرج 5 أحرف.
5. REPLACE():
- وظيفتها: بتستبدل جزء من النص بآخر.
- مثال:
SELECT REPLACE('Hello World', 'World', 'SQL');
النتيجة هتكون Hello SQL لأن الدالة استبدلت “World” بـ “SQL”.
6. UPPER():
- وظيفتها: بتحول النص لحروف كبيرة (uppercase).
- مثال:
SELECT UPPER('Hello World');
النتيجة هتكون HELLO WORLD لأن النص اتغير لحروف كبيرة.
7. LOWER():
- وظيفتها: بتحول النص لحروف صغيرة (lowercase).
- مثال:
SELECT LOWER('Hello World');
النتيجة هتكون hello world لأن النص اتغير لحروف صغيرة.
8. TRIM():
- وظيفتها: بتزيل المسافات الفارغة (leading and trailing spaces) من بداية ونهاية النص.
- مثال:
SELECT TRIM(' Hello World ');
النتيجة هتكون Hello World لأن المسافات الزائدة في البداية والنهاية تم إزالتها.
9. CONCAT():
- وظيفتها: بتجمع نصين أو أكتر مع بعض.
- مثال:
SELECT CONCAT('Hello', ' ', 'World');
النتيجة هتكون Hello World لأن النصوص تم دمجها مع بعض.
10. CHARINDEX()
(في SQL Server):
- وظيفتها: بتبحث عن مكان ظهور جزء من النص داخل نص آخر.
- مثال:
SELECT CHARINDEX('World', 'Hello World');
النتيجة هتكون 7 لأن كلمة “World” تبدأ من الحرف السابع.
11. POSITION()
(في PostgreSQL):
- وظيفتها: بتبحث عن مكان ظهور جزء من النص داخل نص آخر.
- مثال:
SELECT POSITION('World' IN 'Hello World');
النتيجة هتكون 7 لأنها بتبدأ من الحرف السابع.
12. FORMAT()
(في بعض قواعد البيانات زي SQL Server):
- وظيفتها: بتستخدم لتحويل النصوص أو الأرقام لتنسيق معين.
- مثال:
SELECT FORMAT(1234.56, 'Currency');
النتيجة هتكون $1,234.56 إذا كنت تستخدم SQL Server.
13. REVERSE():
- وظيفتها: بتعكس النص.
- مثال:
SELECT REVERSE('Hello World');
النتيجة هتكون dlroW olleH.
14.String Agg
لو عندك جدول اسمه Employees
وعايز تجمع أسماء الموظفين في سترينج واحدة:
SELECT STRING_AGG(FirstName, ', ') AS EmployeeNames
FROM Employees;
EmployeeNames |
---|
Ali, Ahmed, Sara, Hala |
استخدامات الـ String Functions:
- تقطيع النصوص: زي ما شفنا في دوال LEFT و RIGHT و SUBSTRING.
- تحويل النصوص: زي UPPER و LOWER علشان تحول النصوص لحروف كبيرة أو صغيرة.
- البحث والتبديل: زي REPLACE و CHARINDEX أو POSITION علشان نبحث عن جزء من النص أو نستبدله.
- التنسيق: زي FORMAT و CONCAT علشان ندمج نصوص مع بعضها أو ننسق الأرقام والنصوص.
خلاصة:
الـ String Functions في SQL هي مجموعة من الدوال المهمة للتعامل مع البيانات النصية. بتسمح لك بعمليات مثل التقطيع، الاستبدال، التنسيق، التحويل لحروف كبيرة أو صغيرة، والبحث عن أجزاء من النص. تعتبر دوال أساسية عند التعامل مع البيانات النصية في SQL.