إنتقال للمحتوى

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

كيفية تقسيم الاسم الكامل ... الى الاسم الأول واسم الأب واسم الجد


25 رد (ردود) على هذا الموضوع

#1 the past

the past

    عضو مميز

  • الأعضــاء
  • 951 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 11 May 2010 - 10:00 PM

السلام عليكم ورحمة الله وبركاته



انا عندي جدول فيه عمود اسمه name ادخل فيه الاسم عادي مثلا (محمد احمد محمد علي)

المشكلة انه في التقرير


الاسم مقسم بمعنى الاسم الاول : اسم الاب: اسم الجد: اللقب



كيف اقدر اطلع الاسم بهذه الطريقة في التقرير

مع العلم انه عندي داتا كثير جدا وما اقدر امسح


ارجووووووووو المساعدة جزاكم الله خير

#2 mustafagamiel

mustafagamiel

    مشرف قسم النماذج والمشاريع

  • فريق الإشراف
  • 2,095 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 12 May 2010 - 12:07 AM

السلام عليكم

هي ممكن بإنك تتحسس المسافات بين الكلمات باستخدام مثلا substr ولكن ممكن يقابلنا مشكلة
فرضا هناك اسم مثلا زي عبدالله هل ستكتب كده أم عبد الله يعني الاسماء ذات أكثر من كلمة
بسيطة ان شاء الله

اللهم إن كان رزقي في الســــــــــماء فأنزله
وإن كان في الأرض فأخرجـه
وإن كان بعيدا فقربه وإن كان قريبا فيسره
وإن كان قليلا فكثره وإن كان كثيرا فبارك لي فيه

اللـــهم آمين
لا إله إلا الله وحده لاشريك له- له الملك وله الحمد وهو على كل شيء قدير
لا إله إلا أنت سبحانك-- إني كنت من الظالمين






#3 the past

the past

    عضو مميز

  • الأعضــاء
  • 951 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 12 May 2010 - 12:12 AM

ارجووووو المساعدة



وخصوصا ان عندي بيانات كثيرة جدا في هذا الجدول ولا اريد ان اعدل في الاعمدة فيؤدي ذلك الى ضياع البيانات

#4 abdou1984

abdou1984

    عضو نشط

  • الأعضــاء
  • 270 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 12 May 2010 - 08:37 AM

السلام عليكم ورحمة الله وبركاته
اخى ممكن تشوف الحل ده ان شاء الله يساعدك فى مشكلتك .

مثال كامل للتجربة .

CREATE TABLE TMP(NAME VARCHAR2(200));
INSERT INTO TMP VALUES ('على محمود أحمد بكر');
INSERT INTO TMP VALUES ('محمد احمد محمد علي');
COMMIT;


SELECT SUBSTR(NAME,1,INSTR(NAME,' ',1,1)-1 ) FIRST_NAME ,
SUBSTR(NAME,INSTR(NAME,' ',1,1)+1, INSTR(NAME,' ',1,2)-INSTR(NAME,' ',1,1) ) SECOND_NAME ,
SUBSTR(NAME,INSTR(NAME,' ',1,2)+1 , INSTR(NAME,' ',1,3)-INSTR(NAME,' ',1,2) ) THIRD_NAME ,
SUBSTR(NAME,INSTR(NAME,' ',1,3)+1 ) LAST_NAME FROM TMP;


#5 the past

the past

    عضو مميز

  • الأعضــاء
  • 951 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 12 May 2010 - 11:31 AM

شكرا يا اخي


بس اذا كان الاسم ( عبدالرحمن محمد عبدالله )



هل ستكون نفس النتيجة

#6 the past

the past

    عضو مميز

  • الأعضــاء
  • 951 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 12 May 2010 - 01:38 PM

ياشباب

ارجووو المساعدة



شكرا

#7 jadquraan

jadquraan

    عضو نشط

  • الأعضــاء
  • 250 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 13 May 2010 - 01:46 AM

السلام عليكم

الحل اللي كتبه abdou1984 هو الملاذ الوحيد

لكن تبقى مشكله الاسماء المركبه

و لتقليل حدوث هذه المشكله يجب ضبط البيانات قبل تنفيذ عملية التقسيم ويتم ذلك بإستبعاد كل شيء قد يؤدي الى احداث ضرر

مثل

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

كالتالي


نفرض ان الجدول اسمه a
وحقل الاسم اسمه n

يبدىء مشوارك الآن





update a set n=replace(n,'  ',' ');
update a set n=replace(n,'   ',' ');
update a set n=replace(n,'عبد الله','عبدالله');
update a set n=replace(n,'عبد الرحمن','عبدالرحمن');
update a set n=replace(n,'عبد الكريم','عبدالكريم');
update a set n=replace(n,'عبد الصمد','عبدالصمد');







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


إذا أعجبك قولي فلا تقل شكـراً ...
بل قل الآتـي ::
اللهم اغفر له ولوالديه ولزوجته وابنائه ولأخوانه واخواته ولسائر المسلمين والمسلمات ما تقدم من ذنبهم وما تأخر..
وقِهم عذاب القبر وعذاب النار..
و أدخلهم الفردوس الأعلى مع الأنبياء والشهداء والصالحين ..
واجعل دعاءهم مستجاب في الدنيا والآخرة ..
اللـهم آميـن..اللـهم آميـن..اللـهم آميـن..


اخوكم جاد القرعان
الأردن- الطفيلة
مبرمج نظم
جامعة الطفيلة التقنية
vb6,vb.net,aspx with ajax,oracle 10g (sql,plsql,forms,reports) ,
oracle database administrator(DBA)
oracle application server administrator
web application administrator
jadquraan@yahoo.com
jadquraan@ttu.edu.jo
00962777935393

CV


#8 Mr_CoBoL

Mr_CoBoL

    مشترك

  • الأعضــاء
  • 135 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 13 May 2010 - 09:27 AM

السلام عليكم ورحمة الله وبركاته
راجع الملف المرفق
ملف مرفق  CHKNAM.rar   11.11كيلو   670 عدد مرات التحميل
{قُلْ إِنَّ صَلاَتِي وَنُسُكِي وَمَحْيَايَ وَمَمَاتِي لِلّهِ رَبِّ الْعَالَمِينَ }الأنعام162

#9 ENG_HOSSAM_WALLY

ENG_HOSSAM_WALLY

    عضو مميز

  • الأعضــاء
  • 1,005 مشاركة
  • الاسم الأول:Hossam
  • اسم العائلة:Wally
  • البـلـد: Country Flag
  • المنصب الحالي:......

تاريخ المشاركة 15 May 2010 - 10:48 AM


السلام عليكم

الاخ / Mr_CoBoL

لقد جربت الملف وهو يعمل بشكل جيد جدا

بارك الله فيك وجعله الله فى ميزان حسناتك

Hossam Wally

 

Hossam_wally@hotmail.com

 

 

00201156365637

 

 


#10 mageed_ahmed

mageed_ahmed

    مشرف قسم الـ DBA

  • فريق الإشراف
  • 956 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:.

تاريخ المشاركة 15 May 2010 - 04:02 PM

حل رائع هكذا هم الرجال المعطائة

أكثر الله من امثالك أخي
("واتقوا يوما ترجعون فيه الي اللــــــه")

#11 Ahmad.Hasan

Ahmad.Hasan

    مشرف قسم الـ Forms & Reports والمشاريع

  • فريق الإشراف
  • 4,871 مشاركة
  • الاسم الأول:Ahmad
  • اسم العائلة:Hasan
  • البـلـد: Country Flag
  • المنصب الحالي:Oracle HCM Consultant

تاريخ المشاركة 15 May 2010 - 11:48 PM

جزاكم الله كل خير...
والى الأمام...

.Oracle E-Business Suite R12 HCM Certified Implementation Specialist

 

.Oracle Fusion Human Capital Management 11g Human Resources Certified Implementation Specialist

 


#12 shar120032002

shar120032002

    عضو

  • الأعضــاء
  • 42 مشاركة
  • الاهتمامات:تحدي الصعوبات

تاريخ المشاركة 09 June 2010 - 06:59 PM

على الرحب وأرجوا من الله التوفيق
نرفق لك التالي
إقرأ وربك الأكرم* الذي علم بالقلم*علم الإسان مالم يعلم*

#13 love_ora

love_ora

    عضو

  • الأعضــاء
  • 7 مشاركة

تاريخ المشاركة 09 June 2010 - 08:14 PM

الافضل انك كنت تقسم الجدول عند مابنيته وماتخليش الاسم كامل في حقل واحد اي
الاسم الاول حقل لحاله
الاسم الاوسط حقل
اللقب حقل
بالتوفيق

#14 Sabeer

Sabeer

    عضو

  • الأعضــاء
  • 38 مشاركة

تاريخ المشاركة 15 July 2010 - 11:40 AM


السلام عليكم

الاخ / Mr_CoBoL

لقد جربت الملف وهو يعمل بشكل جيد جدا

بارك الله فيك وجعله الله فى ميزان حسناتك


السلام عليكم ورحمة الله وبركاتة
اخي ENG_HOSSAM_WALLY
حل الاخ Mr_CoBoL جدا رائع لكن لو ادخلنا الاسم عبد الله,او عبد العزيز .........الخ سيظهر عبدكاسم والله كاسم تاني
هنا ستواجهنا مشكلة



نلاحظ انو الاسماء المركبة دائما تاتي بعد الاسم عبد
اذا ممكن نعدل الدالة عليها السطر هذا
:BLOCK3.NAM :=replace (:BLOCK3.NAM,'عبد ','عبد');

وتقبل تحاياي

#15 الكونت

الكونت

    عضو

  • الأعضــاء
  • 49 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 22 July 2010 - 03:49 PM

يمكنك عد المقاطع الناتجة من substr واذا كانت اكثر من 4 ادمج اول 2

Avec mes meilleurs vœux de succès