Start networking and exchanging professional insights

Register now or log in to join your professional community.

Follow

كيف أقوم بالبحث في قاعدة بيانات من خلال جزء من الأسم بواسطة sql server لغة c# ؟

كيف أقوم بالبحث في قاعدة بيانات من خلال جزء من الأسم بواسطة sql server لغة c# مثلا لو كان الاسم الكامل : محمد علي قاسم وقام المستخدم بادخال : محمد أو محم أو مح أو محمد علي أو محمد علي قا أي أن المستخدم ممكن يدخل الأسم كامل أو جزء منه حتى ولو كان الحرف الأول فأن البحث يعطي نتيجة بكل الاسماء المحتملة والمطابقة . وكذلك في حال حفظ الاسم باللغة الانجليزية وعند البحث ادخلت نفس الاسم ولكن باللغة العربية كيف يمكنني تحقيق ذلك ؟

user-image
Question added by Manal Atef , مبرمج , ثمار
Date Posted: 2013/12/16
عبدالرحمن محمد صالح احمد عبيد
by عبدالرحمن محمد صالح احمد عبيد , Web & Application Developer , Alkuraimi Bank

كما قال الاخ احمد منصور في الاجابة السابقة فهي كافية

ولكن يفضل عدم استخدامها كثير او استخدام

مع الاستعلام top(10)

ليخرج لك فقط اول10 اسما متطابقة

select top(10) * from ..... where ...like 'ddd%'

اما اذا كنت تريدها منتهي بـ

 

select top(10) * from ..... where ...like '%ddd'

Ahmed Mansour
by Ahmed Mansour , System Administer , Advanced Clinics

في حالة ادخال المستخدم جزء من الكلمة فانه يتم استخدم الكلمة المميزة LIKE  عند استخدام الفلتر WHERE 

مثال 

ًWhere firstname  LIKE '

'A%' 

فمعناه اعطني كل الاسماء  التي تبدأ بالحرف A.............هذا في الغة الانجليزية وبالمثل في العربية

والله اعلم 

  

اذا بدك تبحث عن الاسم بالعربي فلا بد اضافة 

N مع الاستعلام

 

وكمان الحقل يكون

nvarchar(2000)

 

   الرجاء الاطلاع  على الاستعلام

" fieldname like N'%مح%'" 

Mohammad Ibrahim Samarah
by Mohammad Ibrahim Samarah , Software Developer , Khrayshah Consulting LTD Company

باستخدام "like"  في جملة البيان  والحرف "*"  لتحدد كيفية البحث ضمن الاسم المحدد وان كان في البداية  أو نهاية  أو متوسطة  الاسم

Hesham Mohamed
by Hesham Mohamed , Accountant , Belal Altuwaijry Office

الحالة الاولي :

اذا كنت ستستخدم جزءمن الاسم  و تريد استرجاع كل الحقول الموجود بها هذا الجزء من الاسم  استخدم LIKE مع WHERE علي الحقول التي لم يتم عليها aggregate columns و مع HAVING في الاعمدة التي تم التجميع عليها

الحالة الاولي :

WHERE الحقل المطلوب LIKE (%علي%)

سيقوم باظهار كل النتائج التي بها علي

 

الحالة الثانية:

اذا كنت تعلم الاسم كامل و تريد استرجاع كل الحقول لهذا الاسم استخدم (=) مع WHERE علي الحقول التي لم يتم عليها aggregate columns و مع HAVING في الاعمدة التي تم التجميع عليها

WHERE الحقل المطلوب = 'محمد علي قاسم  '

مع ملاحظة انه يجب وضع الاسم بين علامات التنصيص single quotes

 

 

More Questions Like This