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

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

صورة
- - - - -

كود عرض ايام الاسبوع


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

#1 interface

interface

    مشترك

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

تاريخ المشاركة 05 April 2009 - 11:52 PM

DECLARE V_day char(20);
begin for i IN 0..6 loop
select to_char(sysdate+7-to_char(sysdate,'d')+1+i,'day') into V_day from dual;
END LOOP;
end;


لعرض ايام الاسبوع

لما وكتبت اخر شي في الكود \ سلاش

اعطاني

PL/SQL procedure successfully completed.

المشكلة اني مبتدء في الغة

كيف اشغلة ويطيني ناتج ايام الاسبوع
او كيف استفيد منة

وشكرا
  • olempi معجب بهذا

الغرب تصنع طايرات وصواريخ ... وحنى في ماضينا نعيد النقاشي


#2 mustafagamiel

mustafagamiel

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

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

تاريخ المشاركة 06 April 2009 - 12:54 AM

الاخ العزيز
set serveroutput on DECLARE
V_day char(20);
begin for i IN 0..6 loop
select to_char(sysdate+7-to_char(sysdate,'d')+1+i,'day') into V_day from dual;
DBMS_OUTPUT.put_line ('The week day is : ' || V_day);
END LOOP;
end;

تم التعديل بواسطة mustafagamiel, 06 April 2009 - 12:55 AM.

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

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






#3 amr2027

amr2027

    عضو

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

تاريخ المشاركة 06 April 2009 - 12:56 AM

بستخدم package إسمها dbms_output.put_line(المتغير أو الجملة المطلوب ظهورها);
و علشان الناتج يظهر فى ال isqlplus بنستخدم أمر إسمه set serveroutput on

set serveroutput on DECLARE V_day char(20);
begin for i IN 0..6 loop
select to_char(sysdate+7-to_char(sysdate,'d')+1+i,'day') into V_day from dual;
dbms_output.put_line(V_day);
END LOOP;
end;


#4 colla

colla

    عضو نشط

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

تاريخ المشاركة 06 April 2009 - 07:52 AM

لا ادري إن كان هذا الاستعلام قد يفي بالغرض , ولكني وجدته في إحدى المواقع . فربما يكون هو ما تبحث عنه مع اني
لم ادرسه جيدا بعد :


set serveroutput on DECLARE V_day char(20);
begin for i IN 0..6 loop
select to_char(sysdate+7-to_char(sysdate,'d')+1+i,'day') into V_day from dual;
dbms_output.put_line(V_day);
END LOOP;
end;

على المرء ان يسعى وليس عليه ادراك النجاح


صورة


#5 colla

colla

    عضو نشط

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

تاريخ المشاركة 06 April 2009 - 07:54 AM

آسف لم يظبط معي
SELECT LPAD( MONTH, 20-(20-LENGTH(MONTH))/2 ) MONTH,"Sun", "Mon", "Tue",
"Wed", "Thu", "Fri", "Sat"
FROM (SELECT TO_CHAR(dt,'fmMonthfm YYYY') MONTH, week,
MAX(DECODE(TO_CHAR(dt,'d'),'1',LPAD(TO_CHAR(dt,'fmdd'),2))) "Sun",
MAX(DECODE(TO_CHAR(dt,'d'),'2',LPAD(TO_CHAR(dt,'fmdd'),2))) "Mon",
MAX(DECODE(TO_CHAR(dt,'d'),'3',LPAD(TO_CHAR(dt,'fmdd'),2))) "Tue",
MAX(DECODE(TO_CHAR(dt,'d'),'4',LPAD(TO_CHAR(dt,'fmdd'),2))) "Wed",
MAX(DECODE(TO_CHAR(dt,'d'),'5',LPAD(TO_CHAR(dt,'fmdd'),2))) "Thu",
MAX(DECODE(TO_CHAR(dt,'d'),'6',LPAD(TO_CHAR(dt,'fmdd'),2))) "Fri",
MAX(DECODE(TO_CHAR(dt,'d'),'7',LPAD(TO_CHAR(dt,'fmdd'),2))) "Sat"
FROM ( select dt, (case when dt >=
to_date(to_char(dt, 'dd/')||'12/'||to_char(sysdate,'yyyy'),'dd/mm/yyyy') and wk = '01' then '53' else wk end) week
from(
SELECT TRUNC(SYSDATE,'y')-1+ROWNUM dt, TO_CHAR(TRUNC(SYSDATE,'y')-1+ROWNUM+1,'iw') wk
FROM all_objects
WHERE ROWNUM <= ADD_MONTHS(TRUNC(SYSDATE,'y'),12) - TRUNC(SYSDATE,'y'))
)
GROUP BY TO_CHAR(dt,'fmMonthfm YYYY'), week)
ORDER BY TO_DATE( MONTH, 'Month YYYY' ), TO_NUMBER(week);

على المرء ان يسعى وليس عليه ادراك النجاح


صورة


#6 mohamadgaw

mohamadgaw

    عضو

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

تاريخ المشاركة 11 April 2009 - 02:37 PM

ممكن نختصر الامر وبرضه هيعطى نفس النتيجة
select to_char(sysdate,'day') from dual;

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

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

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

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

تاريخ المشاركة 12 April 2009 - 10:37 AM

انا جربت الكود ده واشتغل كويس وهو بسيط
set SERVEROUTPUT ON
DECLARE
V_DATE VARCHAR2(20);
BEGIN
FOR I IN 0..6 LOOP
v_date := to_char( sysdate- i, 'day' );
DBMS_OUTPUT.put_line(V_DATE);
END LOOP;
END;
بالتوفيق

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

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


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


#8 اسامه المثنى

اسامه المثنى

    عضو

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

تاريخ المشاركة 12 April 2009 - 12:36 PM

هذة اضافة على كود الاخ
islamic_boy600
تظهر الايام باالعربي
set SERVEROUTPUT ON DECLARE
V_DATE VARCHAR2(20);
BEGIN FOR I IN 0..6 LOOP
v_date := to_char( sysdate- i, 'day','NLS_DATE_LANGUAGE=ARABIC' );
DBMS_OUTPUT.put_line(V_DATE);
END LOOP;
END;

دعواتكم