الفرق بين المراجعتين ل"SQL/like"
< SQL
اذهب إلى التنقل
اذهب إلى البحث
Eyad-alismail (نقاش | مساهمات) |
|||
(3 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة) | |||
سطر 75: | سطر 75: | ||
WHERE FullName LIKE 'H%' OR (FullName LIKE 'A%' AND FullName NOT LIKE '_b_%'); | WHERE FullName LIKE 'H%' OR (FullName LIKE 'A%' AND FullName NOT LIKE '_b_%'); | ||
− | </syntaxhighlight>سيؤدي لعرض كافة النتائج للزبائن الذين تبدأ أسماؤهم بحرف H أو بحرف A ولكن دون أن يكون الحرف الثاني b ويليه حرف ثم أي تسلسل للمحارف، وستظهر النتائج: | + | </syntaxhighlight>حيث أن : |
+ | {| class="wikitable" | ||
+ | !أي سلسلة نصية في بدايتها H | ||
+ | !'H%' | ||
+ | |- | ||
+ | |أي سلسلة نصية في بدايتها A | ||
+ | |'A%' | ||
+ | |- | ||
+ | |أي سلسلة نصية في بدايتها على الأقل ثلاث محارف والمحرف الثاني حصراً b | ||
+ | |'%_b_' | ||
+ | |} | ||
+ | سيؤدي لعرض كافة النتائج للزبائن الذين تبدأ أسماؤهم بحرف H أو بحرف A ولكن دون أن يكون الحرف الثاني b ويليه حرف ثم أي تسلسل للمحارف، وستظهر النتائج: | ||
{| class="wikitable" | {| class="wikitable" | ||
!Bill | !Bill | ||
سطر 119: | سطر 130: | ||
* [https://www.postgresql.org/docs/9.0/static/functions-matching.html توثيق LIKE في محرك PostgreSQL] | * [https://www.postgresql.org/docs/9.0/static/functions-matching.html توثيق LIKE في محرك PostgreSQL] | ||
* [https://dev.mysql.com/doc/refman/5.7/en/pattern-matching.html توثيق LIKE في محرك MySQL] | * [https://dev.mysql.com/doc/refman/5.7/en/pattern-matching.html توثيق LIKE في محرك MySQL] | ||
− | [[تصنيف:SQL]] | + | [[تصنيف:SQL|{{SUBPAGENAME}}]] |
− | [[تصنيف:SQL Operators]] | + | [[تصنيف:SQL Operators|{{SUBPAGENAME}}]] |
المراجعة الحالية بتاريخ 12:14، 24 نوفمبر 2019
يستخدم هذا المعامل لتحديد نمط معين للسلسلة النصية يُحدد الشرط وفقًا له، ويوضح الجدول الآتي الرموز المستخدمة في صياغة هذا النمط:
الرمز | استخدامه |
---|---|
%
|
أي سلسلة نصّية خالية أو بمحرف أو أكثر |
_
|
محرف وحيد |
مثال
إن كان الجدول الآتي customers
في قاعدة البيانات:
Bill | OrderID | FullName | CustomerID |
---|---|---|---|
160 | 0291 | Abd al-Salam Hadi | 1156 |
170 | 0302 | Ahmad Mostafa | 1157 |
210 | 0203 | Reem Hammad | 1158 |
350 | 0294 | Abd Allah Sadiq | 1159 |
185 | 0255 | Raghad al-Hamdan | 1160 |
165 | 0276 | Abd al-Razzaq Salloum | 1161 |
175 | 0247 | Hussam Siraj | 1162 |
180 | 0208 | Hiba Maktabi | 1163 |
170 | 0219 | Abd al-Rahman Rida | 1164 |
220 | 0210 | Abd al-Qader Khalil | 1165 |
إن تنفيذ الاستعلام الآتي:
SELECT *
FROM customers
WHERE FullName LIKE 'H%' OR (FullName LIKE 'A%' AND FullName NOT LIKE '_b_%');
حيث أن :
أي سلسلة نصية في بدايتها H | 'H%' |
---|---|
أي سلسلة نصية في بدايتها A | 'A%' |
أي سلسلة نصية في بدايتها على الأقل ثلاث محارف والمحرف الثاني حصراً b | '%_b_' |
سيؤدي لعرض كافة النتائج للزبائن الذين تبدأ أسماؤهم بحرف H أو بحرف A ولكن دون أن يكون الحرف الثاني b ويليه حرف ثم أي تسلسل للمحارف، وستظهر النتائج:
Bill | OrderID | FullName | CustomerID |
---|---|---|---|
170 | 0302 | Ahmad Mostafa | 1157 |
175 | 0247 | Hussam Siraj | 1162 |
180 | 0208 | Hiba Maktabi | 1163 |
التوافقية
SQLServer | SQLite | Oracle | PostgreSQL | MySQL |
---|---|---|---|---|
نعم | نعم | نعم | نعم | نعم |