الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

البحث عن حرف الألف

Featured Replies

بتاريخ:

السلام عليكم

لو سمحتوا يا إخوان، ما هي طريقة البحث عن حرف الألف بحيث يتم تجاهل حالة الهمزة؟

مثلا: أحمد إبراهيم، احمد ابراهيم ، أحمد ابراهيم ، احمد إبراهيم ، إحمد أبراهيم

أريد أن يرجع البحث جميع الحالات السابقة

بتاريخ:

لو سمحت توضح طريقه البحث الي بتسال عنها هل هي على مستوى البلوك او الحقل
بس ممكن تبرمج عمليه البحث ممكن اعطيك مساعده ممكن تفيدك
select chr(450) from dual = آ
select chr(450) from dual = أ

بتاريخ:
  • كاتب الموضوع

السلام عليكم،

مشكور أخي Ora_Consultant ممكن يكون عندك حقل فيه إسم وتريد البحث عن أي اسم معين فيه حرف الألف في أي مكانـ وتريد إحضار جميع ريكوردز التي فيها اسم يحتوي على حرف ألف بغض النظر عن ادخاله بهمزة أو بدون
ونفس الشيء ينطبق على الياء

ممكن أحيانا تحويل جميع الألف المدخلة إلى ا بدون همزة ثم تخزينها على DB

بتاريخ:

اخى الكريم :

Naji_Ali

- يمكن استخدام الدالة translate وهى دالة تقوم باستبدال بعض الحروف ببعض كما يلى

- بفرض وجود حقل last_name داخل جدول employees

select last_name from employees where translate(last_Name,'أإة','ااه') = translate ('&v_name','أإة','ااه')



تقوم الجملة السابقة بطلب ادخال الاسم المراد البحث عنه
وبهذه الطريقة ليس مهما طريقة تخزين الاسماء داخل الجدول (أحمد أو احمد) وايضاً ليس مهماً طريقة ادخال المتغيير المراد البحث به v_name&
فيما يلى شرح لهذه الدالة

TRANSLATE(<c1>, <c2> ,<c3>) takes three arguments, where c1, c2, and c3 are character strings. This function returns c1 with all occurrences of
characters in c2 replaced with the positionally corresponding characters in c3. A NULL is returned if any of c1, c2, or c3 is NULL. If c3 has fewer characters
than c2, the unmatched characters in c2 are removed from c1. If c2
has fewer characters than c3, the unmatched characters in c3 are ignored.
SELECT TRANSLATE('fumble','uf','aR') test1
,TRANSLATE(‘When in the course’,’en’,’?~’) test2
,TRANSLATE(‘Mississippi’,’Mis’,’mIS’) test3
FROM dual; TEST1 TEST2 TEST3
------ ------------------ -----------
Ramble Wh?~ i~ th? cours? MISSISSIppI

بتاريخ:
  • كاتب الموضوع

السلام عليكم

الله يجزيك الخير يا أخي Osama Soliman :wub: على هذا الرد الوافي والكامل

جربتها وهي مزبوطة تماما وتؤدي الغرض المطلوب

أخوك ناجي غانم

بتاريخ:

ويمكنك اخ ناجى انشاء Function تسهل عملية البحث وذلك كما يلى :

Create or Replace FUNCTION arab_trans (p_str varchar2) RETURN varchar2 
IS
v_str varchar2(400):='';

BEGIN v_str := translate (p_str,'أإة','ااه');
return (v_str);
 
END;



وعند البحث تكتب

select last_name 
from employees where arab_trans (last_name) = arab_trans ('&v_name');

كما تتعامل مع دالة Upper


مع تحياتى
اسامه سليمان
القاهرة

بتاريخ:
  • كاتب الموضوع

الله يجزيك الخير على الإضافة

حودي جمايلك وين؟

  • بعد 1 سنة...
بتاريخ:

جزاك الله خيرا ياخ اسامه

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.