helal_10g بتاريخ: 6 فبراير 2013 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 6 فبراير 2013 ماهى و ظيقة power SELECT power (2, 3) , power(5,2) FROM dual اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
az123 بتاريخ: 6 فبراير 2013 تقديم بلاغ مشاركة بتاريخ: 6 فبراير 2013 وظيفة power: ترجع العدد الأول مرفوعاً لأس قيمته العدد الثانييعني مثلاً power(2,3) هي 2 أس 3 = 2×2×2 = 8و power(5,2) هي 5 أس 2 = 5×5 = 25 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
helal_10g بتاريخ: 6 فبراير 2013 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 6 فبراير 2013 وضح و ظيفة هذا الكود داخل FORMS DECLARE v number; BEGIN v:= POPULATE_GROUP ('R1'); POPULATE_LIST('DEPARTMENT_ID','R1'); END; اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
az123 بتاريخ: 6 فبراير 2013 تقديم بلاغ مشاركة بتاريخ: 6 فبراير 2013 (معدل) هذا الكود وظيفته تعبئة القائمة Department_id بالسجلات الناتجة من الـ Record Group R1ويستخدم غالباً لعمل قائمة ديناميكية مبنية على record group ينفذ استعلام من قاعدة البيانات تم تعديل 6 فبراير 2013 بواسطة az123 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
أحمد جادو بتاريخ: 7 فبراير 2013 تقديم بلاغ مشاركة بتاريخ: 7 فبراير 2013 ما الفرق بين استخدام الأمر Replace , Translate مع ذكر مثال لكل منهم اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
helal_10g بتاريخ: 7 فبراير 2013 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 7 فبراير 2013 (معدل) 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; تم تعديل 7 فبراير 2013 بواسطة helal_10g اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
helal_10g بتاريخ: 7 فبراير 2013 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 7 فبراير 2013 (معدل) مثال على سؤال المهندس أحمد TRANSLATE(LAST_NAME,'abc','A','B','C ') SELECT from EMPLOYEES تم تعديل 7 فبراير 2013 بواسطة helal_10g اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
akbat بتاريخ: 7 فبراير 2013 تقديم بلاغ مشاركة بتاريخ: 7 فبراير 2013 create or replace function ex(id in number)return numberisv_num number;beginselect round (months_between (sysdate , hire_date )/12 ,0)into v_num from employeeswhere employee_id = id;return v_num;end;function check years of experience for employee اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
ahmedalqat بتاريخ: 7 فبراير 2013 تقديم بلاغ مشاركة بتاريخ: 7 فبراير 2013 بعد اذنكم ما هو inchor , nested table وشكرا اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
amoeyy بتاريخ: 19 فبراير 2013 تقديم بلاغ مشاركة بتاريخ: 19 فبراير 2013 FOR QUISTION NUMBER ONE IS TABLE EMALAT IS [email protected][email protected][email protected][email protected][email protected][email protected][email protected][email protected]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; / اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sayed ali بتاريخ: 21 مارس 2013 تقديم بلاغ مشاركة بتاريخ: 21 مارس 2013 (معدل) السلام عليكم ارجو المساعده عندي 4 أعمده عاوز فنكشن تحسب ال TOTAL بتاع كل عمود !!!!! تم تعديل 21 مارس 2013 بواسطة sayed ali اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
visiterman بتاريخ: 22 مارس 2013 تقديم بلاغ مشاركة بتاريخ: 22 مارس 2013 create or replace function ex(id in number)return numberisv_num number;beginselect round (months_between (sysdate , hire_date )/12 ,0)into v_num from employeeswhere employee_id = id;return v_num;end;تعطي عدد السنوات منذ تعيين الموظف الى الان اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
mohamed essam_145682 بتاريخ: 9 أغسطس 2015 تقديم بلاغ مشاركة بتاريخ: 9 أغسطس 2015 SELECT *FROM (SELECT salary,first_name,row_number() over (order by salary) as rnFROM employees)WHERE rn <= 10ORDER BY salary; اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
mohamed essam_145682 بتاريخ: 9 أغسطس 2015 تقديم بلاغ مشاركة بتاريخ: 9 أغسطس 2015 (معدل) select EMPLOYEE_ID,first_name ,salARY from (select EMPLOYEE_ID, first_name,salARY ,rank() over (order by salARY desc) rnk , row_number() over (order by salary) as rn from empLOYEES ) where rnk <= 10 and rn > 5 order by salary تم تعديل 9 أغسطس 2015 بواسطة mohamed essam_145682 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
المـقـدام بتاريخ: 22 أغسطس 2015 تقديم بلاغ مشاركة بتاريخ: 22 أغسطس 2015 1 - عايز جملة select لتقسيم عمود الميل إلى إسم المستخدم و إسم الموقع و com يعنى يطلع على ثلاث أعمدة بدون نقطة . أو @ 2 - عايز جملة select أعرف بيها أكبر sum للمرتبات من جدول الموظفين 3- عايز function ترجع تاريخ اليوم زيادة عشرة أيام مع عدم حساب يوم الجمعة و السبت يعنى إجازة الموظف لا يتم حساب فيها يوم الجمعة و السبت 4 - ما هو الفارق بين كل من union , union all , intersect يلا ياشباب عايز الناس تعدى من الانترفيو الصغير دة مستنى الحل بسرعة و كل ما يكون عندى أسئلة إنترفيوا سوف أكتب لكم السؤال الأول: SELECT REGEXP_SUBSTR('[email protected]','((\w+)\.?(\w+)?)@*?',1) , REGEXP_SUBSTR('[email protected]','(\w+)@(\w+)',1,1,'',2), REGEXP_SUBSTR('[email protected]','(\w+)$') FROM DUAL; السؤال الثاني: SELECT MAX(SAL_SUM) FROM (SELECT SUM(SALARY) SAL_SUM FROM EMPLOYEES GROUP BY DEPARTMENT_ID ); اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
المـقـدام بتاريخ: 22 أغسطس 2015 تقديم بلاغ مشاركة بتاريخ: 22 أغسطس 2015 سؤال اليوم عايز أكبر عشر مرتبات من جدول الموظفين الجواب: أعلى عشر مرتبات بأسماء موظفيها SELECT EMPLOYEE_ID, LAST_NAME, SALARY , SAL_RANK FROM (SELECT SALARY, DENSE_RANK() OVER(ORDER BY SALARY DESC) AS SAL_RANK FROM EMPLOYEES) JOIN EMPLOYEES USING(SALARY) WHERE SAL_RANK <= 10 ORDER BY SAL_RANK; اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
المـقـدام بتاريخ: 23 أغسطس 2015 تقديم بلاغ مشاركة بتاريخ: 23 أغسطس 2015 عايز إسم الموظف و تاريخ التعيين و إسم المديرو تاريخ التعيين بس بيانات الموظفين إلى تارخ تاعينهم قبل تاريخ مديرهم SELECT E.LAST_NAME "EMPLOYEE NAME", E.HIRE_DATE "EMP HIRE DATE", M.LAST_NAME "MANAGER NAME", M.HIRE_DATE "MAN HIRE DATE" FROM EMPLOYEES E JOIN EMPLOYEES M ON (E.MANAGER_ID = M.EMPLOYEE_ID) AND (E.HIRE_DATE < M.HIRE_DATE); اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
المـقـدام بتاريخ: 23 أغسطس 2015 تقديم بلاغ مشاركة بتاريخ: 23 أغسطس 2015 طيب بص بقى يا جماعة عندى عمودين و احد بكتب فية PASSWORD و الثانى بكتب فيه تأكيد PASSWORD محتاج function تعمل الموضوع ده لوpassword الثانية لا تتطابق مع الاولة ترجع برسالة معبرة عن الموضوع ده مستنى الحل CREATE OR REPLACE FUNCTION CONF_PASSWORD(CONF_PASS VARCHAR2) RETURN VARCHAR2 IS BEGIN IF(NULLIF('password', CONF_PASS) IS NOT NULL) THEN RAISE_APPLICATION_ERROR(-20202, 'Confirm password is not matched'); END IF; RETURN ('Confirm password is matched'); END; اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
المـقـدام بتاريخ: 23 أغسطس 2015 تقديم بلاغ مشاركة بتاريخ: 23 أغسطس 2015 (معدل) ِشباب عايز شرح سريع للموضوع ده 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; دالة تقوم بإرجاع عدد السنوات المكتملة للموظف الذي يمتك الـ ID التي عمل بها في المؤسسة تم تعديل 23 أغسطس 2015 بواسطة المـقـدام اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
المـقـدام بتاريخ: 23 أغسطس 2015 تقديم بلاغ مشاركة بتاريخ: 23 أغسطس 2015 السلام عليكم ارجو المساعده عندي 4 أعمده عاوز فنكشن تحسب ال TOTAL بتاع كل عمود !!!!! SELECT SUM(COLUMN1), SUM(COLUMN2), SUM(COLUMN3), SUM(COLUMN4) FROM TABLE1; اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
المـقـدام بتاريخ: 23 أغسطس 2015 تقديم بلاغ مشاركة بتاريخ: 23 أغسطس 2015 ما الفرق بين استخدام الأمر Replace , Translate مع ذكر مثال لكل منهم TRANSLATE تقوم بتبديل الأحرف حرف حرف وإن لم تجد له بديل تقوم بحذفه (كل حرف يقابله حرف اخر) وتستخدم في التشفير أحيانا REPLACE تقوم باستبدال الشكل بالشكل الآخر --TRANSLATE FUNCTION SELECT TRANSLATE('AHMED','A B D F H M E','أ ب د ف ح م') FROM dual; --REPLACE FUNCTION SELECT REPLACE('door','or', ' any thing') FROM dual; اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.