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

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

صورة
- - - - -

معرفة التكرارات فى ملف


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

#1 t-hassaan

t-hassaan

    عضو نشط

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

تاريخ المشاركة 27 August 2008 - 02:45 PM

سلام
كيف يمكن معرفة السجلات المكررة فى ملف معين ( لغير ال key ) بالطبع
مثال الاسم و العنوان و تاريخ الميلاد
المطلوب معرفة الاسماء المشتركة فى تاريخ ميلاد معين
وشكرا
طارق

#2 hanyfreedom

hanyfreedom

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 1,481 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Chess , Sudoku

تاريخ المشاركة 29 August 2008 - 07:10 PM

بأعتبار مثلاً ان تاريخ الميلاد هو تاريخ تعيين الموظف ...... أذن

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


SELECT last_name
FROM employees WHERE hire_date = '&hire_date';


كما فى هذه الصورة :-
ملف مرفق  Example.PNG   6.46كيلو   25 عدد مرات التحميل

دا على حسب اللى فهمته من سؤالك ، لو كان قصدك شىء أخر فأرجو زيادة التوضيح .

و شكراً

#3 wahba87

wahba87

    عضو

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

تاريخ المشاركة 29 August 2008 - 08:18 PM

law 3ayz te3redhom kol el metkarrar fel hire_date momken te2ool
SELECT *
FROM employees e1
WHERE hire_date IN (SELECT hire_date FROM employees e2) AND e1.employee_id <> e2.employee_id


#4 أبوعبدالملك المصري

أبوعبدالملك المصري

    عضو مميز ومشرف سابق

  • المجموعة الماسية
  • 453 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 29 August 2008 - 09:23 PM

أخي لم أفهم ولا كلمة من كلامك المختلط بالله عليك اكلم عربي أو إنجليزي وسنفهم إن شاء الله أما هذه اللغة فهي تسئ إلى العربية والإنجليزية على حد سواء

Mohamed Salah
Senior Oracle HRMS Techno Functional Consultant -Saudi Arabia

Ready to answer your questions just send me

Msalah600@gmail.com

My MediaFire Account

10.gif

صفحتي على الفيس بوك


مــن كنــوز الآيــات


#5 hanyfreedom

hanyfreedom

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 1,481 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Chess , Sudoku

تاريخ المشاركة 29 August 2008 - 11:25 PM

law 3ayz te3redhom kol el metkarrar fel hire_date momken te2ool

SELECT *
FROM employees e1
WHERE hire_date IN (SELECT hire_date FROM employees e2) AND e1.employee_id <> e2.employee_id


أولاً أضيف صوتى لصوت أخى islamic_boy600 لما قاله ....... حيث أنه من الصعب على بعض اخواننا هنا بالمنتدى قراءة هذه اللغة الغريبة ، و من ثم أرجو يا أخى wahba87 أما ان تكتب عربى او تكتب أنجليزى .

ثانياً : أرجو تجريب الكود قبل وضعه بالمنتدى ...... انا بعد ما جربته الخطاء ده ظهر :-

ERROR at line 3:
ORA-00904: "E2"."EMPLOYEE_ID": invalid identifier

will be good idea to review Lesson five "Displaying Data from Multiple Tables" from oracle material


و شكراً

#6 wahba87

wahba87

    عضو

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

تاريخ المشاركة 31 August 2008 - 02:26 AM

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

بالنسبة للكود هيكون كده
SELECT *
FROM employees e1
WHERE hire_date IN (SELECT hire_date FROM employees e2
WHERE e1.employee_id <> e2.employee_id)
order by hire_date


المره دى جربته :P

يا ريت الموديراور يمسح الكود الغلط عشان محدش يتلغبط

#7 hanyfreedom

hanyfreedom

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 1,481 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Chess , Sudoku

تاريخ المشاركة 31 August 2008 - 02:48 AM

الكود حلو فعلاً يا أخ wahba87

و انا عديلت عليه تعديل بسيط جداً ، علشان ال output يبقى واضح للى يجيه ينفذه ، بحيث يظهر ال last_name و ال hire_date بس .

SELECT   last_name , hire_date
FROM EMPLOYEES E1
WHERE HIRE_DATE IN (SELECT HIRE_DATE
FROM EMPLOYEES E2
WHERE E1.EMPLOYEE_ID <> E2.EMPLOYEE_ID)
ORDER BY HIRE_DATE
/


تشكر أخى wahba87 ، و انا لا أستطيع مسح كودك السابق حتى يكون كل الكلام منطقى لأى شخص يأتى لقراءة كل الموضوع فيما بعد .

و بالتوفيق للجميع .

#8 t-hassaan

t-hassaan

    عضو نشط

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

تاريخ المشاركة 31 August 2008 - 10:17 AM

مشكورين يا شباب عل هذا الكود

لقد توصلت الى كود اخر ارسله لكم



Select * from employees where hire_date in (
select hire_date
from employees
group by hire_date
Having count(hire_date) > 1)
ORDER BY HIRE_DATE;