الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

كيفية تحويل الوقت إلى أرقام ؟؟؟

Featured Replies

بتاريخ:

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


الأخوة الكرام


كيف يمكنني تحويل الوقت إلى أرقام ؟؟؟ مثال :

7:30 -----> 7.5


شكراً

بتاريخ:
  • كاتب الموضوع

أنا قمت بكتابة هذا الكود و لكنني لم أوفق به

:total_hrs := ((to_number(to_char(:leave_out,'hh24'))) + (to_number(to_char(:leave_out,'mi'))*100/60)) -
((to_number(to_char(:come_in,'hh24'))) + (to_number(to_char(:come_in,'mi'))*100/60))



أرجو أن أجد الحل عندكم

تم تعديل بواسطة أبو فلسطين

بتاريخ:

أنت قصدك يكون الناتج على الفورم ولا على ال SQL*PLUS ؟

بتاريخ:
  • كاتب الموضوع

أخي الحبيب هاني



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

هل أستطيع أن أستخدم ما يلي في sql*plus ؟؟؟



:total_hrs
:leave_out
:come_in



:)


على أي حال أخي هاني أنا قمت بحل المشكلة ... و أشكرك من أعماق قلبي على محاولتك مساعدتي
بارك الله بك و كثر الله من أمثال من الناس الطيبين

بتاريخ:

علشان كده أنا كنت مستغرب أنك واضع موضوعك فى منتدى ال SQL
على أى حال حصل خير ، أنا هنقل موضوعك لمنتدى ال Forms

و أتمنى أن تفيد أصدقائك بكيفية حل هذه المشكلة حتى تعم الفائدة على الجميع .

و شكراً

بتاريخ:

الأخ الكريم ، فعلاً فكرة جيدة جداً ، بس أنا أفضل إنشاء الـ Functions لغرض إستخدامها في أي مكان سواء من داخل الـ database او من خارجها !!!!

علي العموم أنظر الي الطريقة التالية التي تحول الوقت الي قيمة رقمية صحيحة :

CREATE OR REPLACE FUNCTION GET_TIME_NO(IN_DATE DATE) RETURN NUMBER
AS
 HH  NUMBER;
 MI  NUMBER;
 SS  NUMBER;
 
 ID_RETURN  NUMBER(20,3);
BEGIN
 IF(IN_DATE IS NULL)THEN
RETURN 0;
 ELSE
HH := (TO_NUMBER(TO_CHAR(In_Date, 'hh24')) * 60 * 60);
MI := (TO_NUMBER(TO_CHAR(In_Date, 'MI')) * 60);
SS := TO_NUMBER(TO_CHAR(In_Date, 'ss'));
ID_RETURN := (HH + MI + SS) / 60 / 60;

RETURN ID_RETURN;
 END IF;
END;
/



ويمكنك إستدعاء هذا الغرض بالشكل التالي :

SELECT GET_TIME_NO(TO_DATE('2008/8/30 01:30:30','YYYY/MM/DD HH24:MI:SS')) AS DAT_NO FROM DUAL;



أو

SET SERVEROUTPUT ON
DECLARE
 D   NUMBER(10,3);
BEGIN
 D := GET_TIME_NO(TO_DATE('2008/8/30 01:30:30','YYYY/MM/DD HH24:MI:SS'));
 DBMS_OUTPUT.PUT_LINE(D);
END;
/





بالتوفيق

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

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

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.