بتاريخ: 31 يناير 201412 سنة comment_246063 بسم الله الرحمن الرحيمان شاء هنتناول شرح ال In-line View فى ال SQLايه و ظيفتها و اهميتها ؟؟ال In-line View هى طريقة لكتابة SELECT Statement عند FROMيعنى اكتب FROM (SELECT * FROM ) و بمعنى تانى انى استخدم ال Sub Query زى ال Tableالطريقة دى مفيده جدا فى حالة انى بعمل Complex Queryممكن استخدمها فى انى اعمل Join معاهاامثله على ال In-Line Viewاول مثال لو عايز اجيب الموظفين اللى عندهم اعلى مرتب فى كل اداره SELECT a.last_name, a.salary, a.department_id, b.maxsal FROM employees a,( SELECT department_id, max(salary) maxsalFROM employeesGROUP BY department_id ) b WHERE a.department_id = b.department_id AND a.salary = b.maxsal; هنا انا بستخدم Agg Function جوا ال In-Line view عشان اقدر اجيب ال Maxsal و بدى ال Function اسم تانى "Alias" و ال In-Line View بديها Alias و فى ال Main Select Statement بكتب Inline veiw Alias.Function Alias عشان استخدمها بدون Group by و اقدر اعرض معاها اكتر من ColumnمثالSELECT *FROM ( SELECT deptno, count(*) emp_countFROM empGROUP BY deptno ) emp,deptWHERE dept.deptno = emp.deptno; و دا مثال Advanced لل DBA عشان تحسب المساحه الفاضيه فى Tablespace column "Tablespace" format a13column "Used MB" format 99,999,999column "Free MB" format 99,999,999column "Total MB" format 99,999,999select fs.tablespace_name "Tablespace",(df.totalspace - fs.freespace) "Used MB",fs.freespace "Free MB",df.totalspace "Total MB",round(100 * (fs.freespace / df.totalspace)) "Pct. Free"from(select tablespace_name, round(sum(bytes) / 1048576) TotalSpace from dba_data_files group by tablespace_name ) df, (select tablespace_name, round(sum(bytes) / 1048576) FreeSpace from dba_free_space group by tablespace_name ) fswhere df.tablespace_name = fs.tablespace_name; مثال منقول تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.