20-11-17, 04:22 AM
السلام عليكم...
لا أدري إن كانت قواعد البيانات لا تدعم الـ Regular Expressions كما قال الأخ السندبااد و لكن يمكن استعمال خدعة بسيطة مع عبارة UNION (الكود التالي يعمل مع SQL Server):
حيث table_name في الجمل الثلاث هو نفس اسم الجدول، و كذلك field_name هو نفس اسم الحقل أو العمود.
العمود الإضافي num هو مجرد عمود لأعداد متسلسلة لترتيب السجلات حسب المطلوب.
في هذا الكود تظهر الكلمات التي تبدأ بحرف الطاء أولاً ثم التي تبدأ بحرف السين و أخيراً التي تبدأ بحرف اللام.
* المشكلة في هذا أننا إذا أردنا تضمين كل الحروف قسنحتاج تقريباً إلى 29 جملة UNION و SELECT !!
نرجو الاستفادة و السلام.
لا أدري إن كانت قواعد البيانات لا تدعم الـ Regular Expressions كما قال الأخ السندبااد و لكن يمكن استعمال خدعة بسيطة مع عبارة UNION (الكود التالي يعمل مع SQL Server):
كود :
SELECT *, 1 AS num FROM table_name WHERE (field_name LIKE 'ط%')
UNION
SELECT *, 2 AS num FROM table_name WHERE (field_name LIKE 'س%')
UNION
SELECT *, 3 AS num FROM table_name WHERE (field_name LIKE 'ل%')
ORDER BY num, field_nameحيث table_name في الجمل الثلاث هو نفس اسم الجدول، و كذلك field_name هو نفس اسم الحقل أو العمود.
العمود الإضافي num هو مجرد عمود لأعداد متسلسلة لترتيب السجلات حسب المطلوب.
في هذا الكود تظهر الكلمات التي تبدأ بحرف الطاء أولاً ثم التي تبدأ بحرف السين و أخيراً التي تبدأ بحرف اللام.
* المشكلة في هذا أننا إذا أردنا تضمين كل الحروف قسنحتاج تقريباً إلى 29 جملة UNION و SELECT !!
نرجو الاستفادة و السلام.
