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

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

صورة
- - - - -

أسئلة جديدة من إنترفيو

أسئلة جديدة من إنترفيو

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

#46 أحمد جادو

أحمد جادو

    عضو نشط

  • الأعضــاء
  • 244 مشاركة
  • الاسم الأول:أحمد
  • اسم العائلة:جادو
  • البـلـد: Country Flag
  • المنصب الحالي:Senior Oracle Developer @ Alhasa Municipality

تاريخ المشاركة 05 February 2013 - 01:48 PM

الهدف هو إظهار أعمدة أخرى بجوار group function غير التي يتم التجميع بناء عليها والتجميع على أكثر من متغير ... مثل sum(sal) group by deptno, count(*) group by mgr, empno, ename مثلاً في استعلام واحد بدون كتابة group by
كيف يمكن تحقيق ذلك

تم التعديل بواسطة أحمد جادو, 05 February 2013 - 01:49 PM.


- أحمد جادو -
Senior Oracle Developer
Alhasa
Municipality

Alhasa - Saudi Arabia


#47 أحمد جادو

أحمد جادو

    عضو نشط

  • الأعضــاء
  • 244 مشاركة
  • الاسم الأول:أحمد
  • اسم العائلة:جادو
  • البـلـد: Country Flag
  • المنصب الحالي:Senior Oracle Developer @ Alhasa Municipality

تاريخ المشاركة 05 February 2013 - 02:49 PM

الإجابة:
استخدم صيغة over partition by
مثال:
SELECT empno,
ename,
COUNT ( * ) OVER (PARTITION BY mgr), -- عدد المرؤوسين عند كل مدير
SUM (sal) OVER (PARTITION BY deptno) -- إجمالي رواتب كل إدارة
FROM scott.emp;


والفائدة منها:
اظهار التجميعات مع كل بيان لاستخدامها في كل سطر على حدى
إمكانية إظهار أعمدة أخرى غير مرتبطة بالgroup by

أتمنى أن يكون فيها إفادة
  • helal_10g, ahmedez3 و المـقـدام معجبون بهذا


- أحمد جادو -
Senior Oracle Developer
Alhasa
Municipality

Alhasa - Saudi Arabia


#48 helal_10g

helal_10g

    عضو مميز

  • الأعضــاء
  • 852 مشاركة
  • الاسم الأول:HELAL
  • اسم العائلة:AHMED
  • البـلـد: Country Flag
  • الاهتمامات:oracle ADF

تاريخ المشاركة 05 February 2013 - 03:27 PM

بشمهندس معلومة رائعة جدا و مش موجودة فى الكتاب أصلا

oracle ADF developerr

01153603344
https://www.facebook...WAllwmAlsyasyt/
 


#49 helal_10g

helal_10g

    عضو مميز

  • الأعضــاء
  • 852 مشاركة
  • الاسم الأول:HELAL
  • اسم العائلة:AHMED
  • البـلـد: Country Flag
  • الاهتمامات:oracle ADF

تاريخ المشاركة 05 February 2013 - 03:37 PM

ده نفس المثال الخاص بالمهندس أحمد على hr
SELECT employee_id,department_id,
last_name ,
COUNT ( * ) OVER (PARTITION BY manager_id) "total of employee",
SUM (salary) OVER (PARTITION BY department_id)
FROM employees;

  • أحمد جادو و ahmedez3 معجبون بهذا

oracle ADF developerr

01153603344
https://www.facebook...WAllwmAlsyasyt/
 


#50 ahmedez3

ahmedez3

    مشترك

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

تاريخ المشاركة 06 February 2013 - 07:23 AM

شكرا ليك يا بشمهندس احمد ويابشمهندس هلال على المعلومة الجميلة
جزاكم الله كل خير عنا وعن جميع المبتدئين

#51 helal_10g

helal_10g

    عضو مميز

  • الأعضــاء
  • 852 مشاركة
  • الاسم الأول:HELAL
  • اسم العائلة:AHMED
  • البـلـد: Country Flag
  • الاهتمامات:oracle ADF

تاريخ المشاركة 06 February 2013 - 01:43 PM

ماهى و ظيقة power
SELECT  power (2, 3) , power(5,2)
FROM   dual

oracle ADF developerr

01153603344
https://www.facebook...WAllwmAlsyasyt/
 


#52 az123

az123

    مشترك

  • الأعضــاء
  • 185 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:ORACLE

تاريخ المشاركة 06 February 2013 - 05:18 PM

وظيفة power: ترجع العدد الأول مرفوعاً لأس قيمته العدد الثاني
يعني مثلاً power(2,3) هي 2 أس 3 = 2×2×2 = 8
و power(5,2) هي 5 أس 2 = 5×5 = 25
  • helal_10g معجب بهذا

سبحان الله العظيم وبحمده
اللهم صلي وسلم على نبينا محمد
لا اله الا الله ولا حول ولا قوة الا بالله
سبحان الله وبحمده سبحان الله العظيم
يا رب أغفر وأرحم لأمه محمداً مغفرة ورحمة عامة
أستغفر الله الذى لا اله الا هو الحى القيوم وأتوب إليه
يارب لك الحمد كما ينبغى لجلال وجهك ولعظيم سلطانك
لا إلهَ إلاّ اللّهُ وحْـدَهُ لا شَـريكَ لهُ، لهُ المُـلْكُ ولهُ الحَمْـد
وهُوَ على كُلّ شَيءٍ قَدير

عَدَدَ خَلْـقِه ، وَرِضـا نَفْسِـه ، وَزِنَـةَ عَـرْشِـه ، وَمِـدادَ كَلِمـاتِـه
وعدد ما أحاط به العلم ... وأحصاه الكتاب ... وخطه القلم
وعدد ما كان, وعدد ما يكون, وعدد الحركات والسكون
ومن يومنا هذا الى يوم ينفخ فى الصور


#53 helal_10g

helal_10g

    عضو مميز

  • الأعضــاء
  • 852 مشاركة
  • الاسم الأول:HELAL
  • اسم العائلة:AHMED
  • البـلـد: Country Flag
  • الاهتمامات:oracle ADF

تاريخ المشاركة 06 February 2013 - 11:57 PM

وضح و ظيفة هذا الكود داخل FORMS
DECLARE
v number;
BEGIN
v:= POPULATE_GROUP ('R1');
POPULATE_LIST('DEPARTMENT_ID','R1');
END;

oracle ADF developerr

01153603344
https://www.facebook...WAllwmAlsyasyt/
 


#54 az123

az123

    مشترك

  • الأعضــاء
  • 185 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:ORACLE

تاريخ المشاركة 07 February 2013 - 01:07 AM

هذا الكود وظيفته تعبئة القائمة Department_id بالسجلات الناتجة من الـ Record Group R1
ويستخدم غالباً لعمل قائمة ديناميكية مبنية على record group ينفذ استعلام من قاعدة البيانات

تم التعديل بواسطة az123, 07 February 2013 - 01:11 AM.

  • helal_10g معجب بهذا

سبحان الله العظيم وبحمده
اللهم صلي وسلم على نبينا محمد
لا اله الا الله ولا حول ولا قوة الا بالله
سبحان الله وبحمده سبحان الله العظيم
يا رب أغفر وأرحم لأمه محمداً مغفرة ورحمة عامة
أستغفر الله الذى لا اله الا هو الحى القيوم وأتوب إليه
يارب لك الحمد كما ينبغى لجلال وجهك ولعظيم سلطانك
لا إلهَ إلاّ اللّهُ وحْـدَهُ لا شَـريكَ لهُ، لهُ المُـلْكُ ولهُ الحَمْـد
وهُوَ على كُلّ شَيءٍ قَدير

عَدَدَ خَلْـقِه ، وَرِضـا نَفْسِـه ، وَزِنَـةَ عَـرْشِـه ، وَمِـدادَ كَلِمـاتِـه
وعدد ما أحاط به العلم ... وأحصاه الكتاب ... وخطه القلم
وعدد ما كان, وعدد ما يكون, وعدد الحركات والسكون
ومن يومنا هذا الى يوم ينفخ فى الصور


#55 أحمد جادو

أحمد جادو

    عضو نشط

  • الأعضــاء
  • 244 مشاركة
  • الاسم الأول:أحمد
  • اسم العائلة:جادو
  • البـلـد: Country Flag
  • المنصب الحالي:Senior Oracle Developer @ Alhasa Municipality

تاريخ المشاركة 07 February 2013 - 11:58 AM

ما الفرق بين استخدام الأمر Replace , Translate مع ذكر مثال لكل منهم


- أحمد جادو -
Senior Oracle Developer
Alhasa
Municipality

Alhasa - Saudi Arabia


#56 helal_10g

helal_10g

    عضو مميز

  • الأعضــاء
  • 852 مشاركة
  • الاسم الأول:HELAL
  • اسم العائلة:AHMED
  • البـلـد: Country Flag
  • الاهتمامات:oracle ADF

تاريخ المشاركة 07 February 2013 - 04:17 PM


DECLARE

V1 RECORDGROUP;

V2 NUMBER;

BEGIN

V1:= CREATE_GROUP_FROM_QUERY('R1','SELECT DEPARTMENT_NAME , TO_CHAR(DEPARTMENT_ID) FROM DEPARTMENTS ');

V2:= POPULATE_GROUP('V1');

POPULATE_LIST('DEPARTMENT_ID','R1');

END;


تم التعديل بواسطة helal_10g, 07 February 2013 - 04:18 PM.

oracle ADF developerr

01153603344
https://www.facebook...WAllwmAlsyasyt/
 


#57 helal_10g

helal_10g

    عضو مميز

  • الأعضــاء
  • 852 مشاركة
  • الاسم الأول:HELAL
  • اسم العائلة:AHMED
  • البـلـد: Country Flag
  • الاهتمامات:oracle ADF

تاريخ المشاركة 07 February 2013 - 04:19 PM


مثال على سؤال المهندس أحمد

TRANSLATE(LAST_NAME,'abc','A','B','C ') SELECT 

from EMPLOYEES


تم التعديل بواسطة helal_10g, 07 February 2013 - 04:23 PM.

oracle ADF developerr

01153603344
https://www.facebook...WAllwmAlsyasyt/
 


#58 akbat

akbat

    عضو

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

تاريخ المشاركة 07 February 2013 - 10:13 PM

create or replace function ex(id in number)
return number
is
v_num number;
begin
select round (months_between (sysdate , hire_date )/12 ,0)
into v_num from employees
where employee_id = id;
return v_num;
end;
function check years of experience for employee

#59 ahmedalqat

ahmedalqat

    عضو

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

تاريخ المشاركة 07 February 2013 - 10:58 PM

بعد اذنكم ما هو inchor , nested table وشكرا

#60 amoeyy

amoeyy

    عضو

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

تاريخ المشاركة 19 February 2013 - 08:59 PM

FOR QUISTION NUMBER ONE

IS

TABLE EMALAT IS


HAMADA@YAHOO.COM
AMRATTIA@YAHOO.COM
SALAYY@YAHOO.COM
SALAYY@YAHOO.COM
SALAYY@HOTMAIL.COM
SALAYY@GOOGLE.COM
SALAYY@ROACLE.COM
SALAYY@ORACLE.COM
AND THE SLECET STATMENT LIKE THIS
SELECT  SUBSTR ( EMAIL , 1 , INSTR(EMAIL , '@')-1) USER_NAME ,
SUBSTR (REPLACE (EMAIL , SUBSTR(EMAIL , 1 , INSTR(EMAIL , '@'))) , 1 , INSTR (REPLACE (EMAIL , SUBSTR(EMAIL , 1 , INSTR(EMAIL , '@'))) , '.') -1)  WEB_SITE
, REPLACE (EMAIL , SUBSTR(EMAIL , 1 , INSTR(EMAIL , '.'))) DOMEIN
FROM EMALAT ;
SELECT * FROM EMALAT ;
/
ANSWER QUESTION NUMBER 2 IS

SELECT MAX(SALARY) FROM
(SELECT SUM (SALARY)  SALARY  FROM EMPLOYEES GROUP BY DEPARTMENT_ID) ;
/
ANSWER QUESTION NUMBER 3 IS

CREATE OR REPLACE PROCEDURE DAYS_PROCEDURE
(NUM  IN NUMBER)
IS
CURSOR DAYS_CURSOR IS SELECT   NEXT_DAY (SYSDATE , NUM)	DAYS  FROM DUAL ;
DAYS_RECORDS	DAYS_CURSOR %ROWTYPE ;
T_DATE VARCHAR2(50) ;
BEGIN
OPEN DAYS_CURSOR ;
LOOP
FETCH DAYS_CURSOR INTO DAYS_RECORDS ;
EXIT WHEN DAYS_CURSOR %NOTFOUND ;
T_DATE := TO_CHAR (DAYS_RECORDS.DAYS , 'DAY-MONTH-YEAR');
INSERT INTO DAYS_OFF (DAYS)
VALUES (T_DATE);
END LOOP;
END DAYS_PROCEDURE ;
/
SHOW ERRORS PROCEDURE DAYS_PROCEDURE ;
/
CREATE OR REPLACE PROCEDURE DAYS_PROCEDURE_1
IS
BEGIN
FOR COUNTER IN 1..7 LOOP
DAYS_PROCEDURE (COUNTER) ;
END LOOP ;
END DAYS_PROCEDURE_1 ;
/
SHOW ERRORS PROCEDURE DAYS_PROCEDURE_1 ;
/
CREATE OR REPLACE PROCEDURE OFF_DAYS
(NUM IN NUMBER)
IS
CURSOR OFF_DAYS_CURSOR IS SELECT NEXT_DAY (NEXT_DAY(SYSDATE , 7) , NUM) DAYS FROM DUAL ;
OFF_DAYS_RECORDS  OFF_DAYS_CURSOR %ROWTYPE ;
T_DATE VARCHAR2(50);
BEGIN
OPEN OFF_DAYS_CURSOR ;
LOOP
FETCH OFF_DAYS_CURSOR INTO OFF_DAYS_RECORDS ;
EXIT WHEN OFF_DAYS_CURSOR %NOTFOUND ;
T_DATE := TO_CHAR (OFF_DAYS_RECORDS.DAYS  , 'DAY-MONTH-YEAR');
INSERT INTO DAYS_OFF
VALUES (T_DATE) ;
END LOOP;
END OFF_DAYS ;
/
SHOW ERRORS PROCEDURE OFF_DAYS ;
/
CREATE OR REPLACE PROCEDURE OFF_DAYS_1
IS
BEGIN
FOR COUNTER IN 1..3 LOOP
OFF_DAYS(COUNTER) ;
END LOOP ;
END OFF_DAYS_1 ;
/
SHOW ERRORS PROCEDURE OFF_DAYS_1 ;
/
CREATE OR REPLACE PROCEDURE TEN_DAYS_PROCEDURE
IS
BEGIN
DAYS_PROCEDURE_1 ;
OFF_DAYS_1 ;
END TEN_DAYS_PROCEDURE ;
/
SHOW ERRROS PROCEDURE TEN_DAYS_PROCEDURE ;
/
CREATE OR REPLACE PROCEDURE NET_DAYS_WORK
IS
COUNT_WORK_DAYS  NUMBER ;
BEGIN
SELECT COUNT (*) INTO COUNT_WORK_DAYS  FROM DAYS_OFF WHERE DAYS NOT LIKE '%السبت%'  AND DAYS NOT LIKE '%الجمعة%' ;
DBMS_OUTPUT.PUT_LINE ('THE TOTAL DAYS THAT THE EMPLOYEE WORKING IS'|| '  '||COUNT_WORK_DAYS||' '||'DAYS');
END NET_DAYS_WORK ;
/
SHOW ERRORS PROCEDURE NET_DAYS_WORK ;
/
BEGIN
TEN_DAYS_PROCEDURE ;
NET_DAYS_WORK ;
END;
/






موضوعات أخرى ذات صلة بـ أسئلة, جديدة, من, إنترفيو