بتاريخ: 5 أبريل 200916 سنة comment_152973 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.المشكلة اني مبتدء في الغة كيف اشغلة ويطيني ناتج ايام الاسبوع او كيف استفيد منة وشكرا تقديم بلاغ
بتاريخ: 5 أبريل 200916 سنة comment_152976 الاخ العزيز 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; تم تعديل 5 أبريل 200916 سنة بواسطة mustafagamiel تقديم بلاغ
بتاريخ: 5 أبريل 200916 سنة comment_152977 بستخدم 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; تقديم بلاغ
بتاريخ: 6 أبريل 200916 سنة comment_152993 لا ادري إن كان هذا الاستعلام قد يفي بالغرض , ولكني وجدته في إحدى المواقع . فربما يكون هو ما تبحث عنه مع اني لم ادرسه جيدا بعد : set serveroutput on DECLARE V_day char(20);begin for i IN 0..6 loopselect 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; تقديم بلاغ
بتاريخ: 6 أبريل 200916 سنة comment_152994 آسف لم يظبط معي 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); تقديم بلاغ
بتاريخ: 11 أبريل 200916 سنة comment_153425 ممكن نختصر الامر وبرضه هيعطى نفس النتيجةselect to_char(sysdate,'day') from dual; تقديم بلاغ
بتاريخ: 12 أبريل 200916 سنة comment_153482 انا جربت الكود ده واشتغل كويس وهو بسيط 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; بالتوفيق تقديم بلاغ
بتاريخ: 12 أبريل 200916 سنة comment_153502 هذة اضافة على كود الاخ 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; دعواتكم تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.