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

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

صورة
- - - - -

كيف يمكن تنفيذ اوامر Sql


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

#1 الامبراطوره

الامبراطوره

    عضو

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

تاريخ المشاركة 23 March 2007 - 11:13 PM

السلام عليكم

ارجو منكم يا اعضاء المساعده عندي بعض الاسئله في الاوراكل

البعض منها حليته بس يطلع لي الحل غلط .. اباا حد يصحح لي الغلط والبعض الآخر ماعرف حله

السؤال الاول
Display the employee ID, surname, given name and the number of months until the employee retires (assuming mandatory retirement at age 65). The oldest employees (the ones with the smallest number of months until retirement) should be listed first.


السؤال الثاني
List the order number, customer ID, order date and expiry date (calculated as 30 months after the order date) for all orders that will expire in the year 2000.


السؤال الثالث والاخير
List the employee number, given name, surname and salary, with the salary rounded to the nearest 100 Dhs.

انا في انتظار ردودكم

السلام عليكم

#2 a_m2

a_m2

    مشترك

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

تاريخ المشاركة 23 March 2007 - 11:57 PM

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

undefined

اجابة السؤال الثانى
undefined

اجابة السؤال الثالث
undefined

اجابة السؤال الرابع

undefined

اتمنى اكون افدتك وطبعا انا فى انتظار باقى الاعضاء ذوى الخبره للتعقيب على هذه الاجابه

#3 الامبراطوره

الامبراطوره

    عضو

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

تاريخ المشاركة 24 March 2007 - 12:27 AM

وين الاجوبه ..؟؟

اللي مكتوب بس undefined

#4 a_m2

a_m2

    مشترك

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

تاريخ المشاركة 24 March 2007 - 12:30 AM

اجابة السؤال الاول
select order_id,customer_id,order_date,add_months(order_date,30) "expire_date"
from employees
where to_date(expire_date,'YYYY') like'%00' order by "expire_date"

اجابة السؤال الثانى

select employee_id,last_name,first_name,round((add_months(birth_date,(65*30))-hire_date)/30,0)
"retires_months" from employees order by "retires_months";

الثالث

select employee_id,first_name,last_name,salary,round(salary,-3)
from employees;

الرابع

select employee_id,last_name from employees where last_name like 'M%' or last_name like'N%';









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

#5 الامبراطوره

الامبراطوره

    عضو

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

تاريخ المشاركة 24 March 2007 - 12:30 AM

شكرااا لك

بس حبيت انك تشرحلي هذا

where to_date(expire_date,'YYYY') like'%00' order by "expire_date"

ليش استخدمت 100%

#6 a_m2

a_m2

    مشترك

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

تاريخ المشاركة 24 March 2007 - 12:31 AM

اخى ان لم تفهم الكود من الطريقه الغبيه المكتوب بها اعطنى اميلك وسوف ارسل الاجابه لك حالا

#7 الامبراطوره

الامبراطوره

    عضو

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

تاريخ المشاركة 24 March 2007 - 12:35 AM

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

select order_no,cust_id,odate,add_months(odate,30) "expire_date"
from employee
where to_date(expire_date,'YYYY') like'%00'
order by "expire_date";

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

#8 a_m2

a_m2

    مشترك

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

تاريخ المشاركة 24 March 2007 - 12:45 AM

السبب انه ما طالع معك هو عبارة where لانه اشترط ان يكون الناتج للاوردرات التى سوف تنتهى عام 2000 واذا قمت بحزف عبارة where سيتنفذ الكود ولكن مجبر لتحويل expire_date لتاريخ لاجعله يعطينى السنه فقط to_date(expire_date,'YYYY') اما موضوع لماذا استخدمة عبارة % وذلك لاجهله ياخذ التواريخ التى تنتهى ب 00 فقط
عموما باقى الاسئله اجابتها سليمه تماما اما هذا السؤال ساعاود التفكير فيه مره اخرى وساعطيك الناتج

#9 الامبراطوره

الامبراطوره

    عضو

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

تاريخ المشاركة 24 March 2007 - 12:58 AM

اهاااا

شكرااا لك