الانتقال إلى المحتوى
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.

إخواني احتاج لمساعدتكم لمعرفة بعض Functions

Featured Replies

بتاريخ:

السلام عليكم ورحمة الله
اخواني انا حاليا ادرس لغة الأوراكل وطبعا لسه مبتدئة . ;)
وأخذنا functions (string,arirthmatic,data, aggregate) انواع functions

اريد أعرف ما وظيفة كلا من :

LTRIM
RTRIM
ROUND
TRUNC
VARIANCE
STDDEV

شو معناهم وشو وظيفتهم مع إعطاء مثال لكل واحد
أرجو الإهتمام بالموضوع لأنه مطلوب من قبل المدرس

أنتظر الردود
أختكم : sunfoor
;)

بتاريخ:

وعليكم السلام ورحمة الله وبركاته
بالنسبة لوظيفة TRIM هي حذف مثلا الفراغات أو أحرف معينة من الجملة
مثال

SQL> SELECT TRIM('A' FROM 'AHMED') FROM DUAL;

TRIM
----
HMED

SQL> SELECT TRIM('A' FROM 'MUSTAFA') FROM DUAL;

TRIM('
------
MUSTAF

SQL> SELECT TRIM ('H' FROM 'AHMED') FROM DUAL;

TRIM(
-----
AHMED

SQL> SELECT TRIM ('A' FROM 'ALAA') FROM DUAL;

T
-
L



المعنى أنها تحذف إما على اليمين أو الشمال لكن لاعرف لو كان في LTRIM OR RTRIM زي الفيجوال جرتها لكن أعطاني خطأ


ROUND وظيفتها أنه بتعمل تقريب فستجد على اليمين مقدار التقريب
فمثلا لو 2 يتم العد مابعد العلامة العشرية برقمين ويينظر للرقم الثالت ويشوف هل الرقم الثالث يستطيع عمل تقريب ويغير في الرقم الثاني أم لا
لاحظ لو القيمة بالسالب فإنه هيمشي عاى يسار العلامة العشرية فمثلا لو -1 هيمشي على يسار العلامة العشرية برقم واحد ويشوف هذا الرقم مقرب لخانة العشرات فمثلا ال 5 ستقرب إلى 10 فتجعل الرقم 100 وهكذا

SELECT round(95.923,2) first,round(95.923,1) second ,round(95.923,0) third, round(95.923,-1) fourth,round(95.923,-2) five from dual ;



ال trunc زي ال round لكنها لاتقرب بل تستقطع مباشرة دون تقريب مثال

SELECT trunc(95.923,2) first,trunc(95.923,1) second ,trunc(95.923,0) third, trunc(95.923,-1) fourth,trunc(95.923,-2) five from dual ;




VARIANCE
التباين

SQL> select VARIANCE(salary) from employees; VARIANCE(SALARY)
----------------
15283140.5




STDDEV ==standaerd deviation الانحراف المعياري

SQL> select STDDEV(salary) from employees; STDDEV(SALARY)
--------------
3909.36575

تم تعديل بواسطة mustafagamiel

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

مشكور أخوي مصطفى جزاك الله خير ...

بس لسه ما فهمت وظيفة Round , trunc

SELECT round(95.923,2) first,round(95.923,1) second ,round(95.923,0) third, round(95.923,-1) fourth,round(95.923,-2) five from dual
ما فهمت المثال!!! كيف لازم يطلع الناتج ؟؟
نفس الحال بالنسبة لل trunc !!! ما فهمت المثال

معليش لو تعيد شرحهم مرة ثانية مع اعطاء الناتج :rolleyes:

شكرا جزيلا

بتاريخ:

ال round بتعمل تقريب لاقرب رقم صحيح على حسب ماالعدد الذي بعد الفاصلة , وبالفعل أرفقت النتائج لكن لم تظهر بشكل كويس
نتائج ال round

FIRST        SECOND       THIRD     FOURTH       FIVE
--------- ---------- ---------- ---------- ----------
   95.92       95.9            96               100         100





ال trunc لاتقرب خالص بل تستقطع أيضا على حسب العدد المذكور بعد الفاصلة ,
نتائج الاستعلام هي

FIRST       SECOND      THIRD     FOURTH       FIVE
---------- ---------- ---------- ---------- ----------
                 95.92       95.9              95           90                   0






للاسف أيضا النتائج غير واضحة
أتمنى التجربة على ال sql كي تري النتيجة أفضل من هذا

تم تعديل بواسطة mustafagamiel

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

صحيح النتائج مو واضحة بحاول ان شاء الله أجربهم على SQL

عموما شكرا جزيلا لك .

أشوفك في استفسار أخر ان شاء الله .

أختك : sunfoor

بتاريخ:

جربى
select trunc(90.1) , trunc(90.6) from dual ;
تعطى 90 فى الحالتين حيث انها تقوم بحذف الكسر
اما
select round(90.1) , round(90.6) from dual
تعطى 90 فى الحالة الاولى و 91 فى الحالة الثاتية حيث اتها تقوم بالتقريب الى اقرب رقم صحيح
هذه ايسط صور وممكن استخدامها بصورة اعقد ولكن اعرفى الفرق ده كبداية

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

:rolleyes: مشكوريين إخواني ما قصرتوا

تقريبا فهمت الفرق بين round & trunc

 

إلى اللقاء في سؤال أخر ..

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

:rolleyes: مساء الخير إخواني

عندي سؤال أخر في function انا ما فهمتها من المدرسة الي تشرح ممكن تفهموني وظيفتها مع إعطاء مثال

 

وهي :

 

instr (string1,string2 ) and

ECIL

FLOOR

 

MOD

 

شكرا لكم

 

أختكم : sunfoor

بتاريخ:

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

1* select instr('oracle','a') "Index Of" from dual SQL> /

 Index Of
----------
        3
-------------------------------------
 1* select instr('oracle','cl') "Index Of" from dual SQL> /

 Index Of
----------
        4



الحالة الأولى هي تمرير باراميترين فقط إلى هذا التابع , الباراميتر الأول هو السلسلة المراد البحث ضمنها, والثاني هو السلسلة المراد البحث عنها.
الباراميتر الثالث هو لتحديد المكان الذي سوف نبدأ منه بالبحث و يأخذ قيمة 1 إذا لم نقم بتحديده (أي إفتراضياً يبدأ البحث من أول السلسلة

1* select instr('abcabc','a',1) "Index Of" from dual SQL> /

 Index Of
----------
        1
-------------------------------------
 1* select instr('abcabc','a',2) "Index Of" from dual SQL> /

 Index Of
----------
        4



أما الباراميتر الرابع هو التوارد , وهو افتراضياً 1 أي التوراد الأول للسلسة الثانية ضمن الأولى .و المثال التالي يوضح هذا الكلام:

1* select instr('abc abc abc','a',1,1) "Index Of" from dual SQL> /

 Index Of
----------
        1
-------------------------------------
 1* select instr('abc abc abc','a',1,2) "Index Of" from dual SQL> /

 Index Of
----------
        5
-------------------------------------
 1* select instr('abc abc abc','a',1,3) "Index Of" from dual SQL> /

 Index Of
----------
        9




و تأتي أهمية هذا التابع مع تابع Substr الذي يقوم باقتطاع سلسلة من أخرى .
لإقتطاع اسم مخدم البريد الإالكتروني من العنوان :

1* select substr('[email protected]',instr('[email protected]','@')+1,(instr('[email protected]','.')
SQL> /

Mail Server
----
mail





تابع الـMod يستخدم من أجل الحصول على باقي القسمة

1* select mod(7,4) from dual SQL> /

 MOD(7,4)
----------
        3




تابع الـ Floor يقرب إلى أدنى قيمة عشرية أي 3.8 تصبح 3
أما تابع الـ Ceil فهو يقرب إلى أعلى قيمة عشرية أي 3.8 تصبح 4

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

مشكور أخوي على الرد والمساعدة ولو لني لسه ما فهمت وظيفة instr function
ياريت لو تبسط لي اياها

وشكرا .

بتاريخ:
ياريت لو تبسط لي اياها


وظيفته هي البحث عن حرف معين ضمن سلسلة معينة,فإذا وجد هذا الحرف يرجع مكانه ضمن السلسلة و إذا لم يجده يرجع 0

SQL> select instr('HelloWorld','W') from dual; result
-----------------------
                     6



1* select instr('HelloWorld','M') from dual SQL> /

result
-----------------------
                     0





هذا المثال يستعرض الموظفين الذين لهم اسم فيه على الأقل حرف 'A' واحد

1* select ename from emp where instr(ename,'A')<>0
SQL> /

ENAME
----------
ALLEN
WARD
MARTIN BLAKE
CLARK
ADAMS
JAMES

7 rows selected.
بتاريخ:
  • كاتب الموضوع

مشكور اخي الكريم ألحين فهمت

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

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

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

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

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

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.