´øUNION ALLÎﻯÊÓͼµÄ¿ìËÙË¢ÐÂ
1. ¶¨ÒåµÄ²éѯµÄunion all²Ù×÷±ØÐëÔÚ×î¶¥µÈ¼¶£¨²éÑ¯ÖØÐ´ºó£©
2. ÎﻯÊÓͼÈÕÖ¾Ö¸¶¨rowidºÍincluding new values
3. Èç¹û±íÉèÉæ¼°µ½Ò»¸ö´óÁ¿µÄinsert»òÕßÖ±½Ó·¾¶¼ÓÔØ£¬deletes,update£¬Ö¸¶¨sequencea
4. fromÁбíÖÐËùÓбíµÄrowid±ØÐë³öÏÖÔÚselect×Ó¾äÖÐ
5. selectÁÐÖбØÐë°üÀ¨Ò»¸öά»¤ÁУ¬±»³ÆÎªunion all marker
6. Ô¶¶ËÊý¾Ý¿âµÄ±í²»Ö§³Öunion all
7. ²»Ö§³Ö¾Û¼¯²Ù×÷£¬ÒòΪûÓÐrowid
CREATETABLEtest1ASSELECT*fromdba_objects;
CREATETABLEtest2ASSELECT*fromdba_objects;
CREATETABLEtest3ASSELECT*fromdba_objects;
CREATEMATERIALIZEDVIEWLOGONCTAIS2.TEST1WITHROWID,SEQUENCEINCLUDINGNEWVALUES;
CREATEMATERIALIZEDVIEWLOGONCTAIS2.TEST2WITHROWID,SEQUENCEINCLUDINGNEWVALUES;
CREATEMATERIALIZEDVIEWLOGONCTAIS2.TEST3WITHROWID,SEQUENCEINCLUDINGNEWVALUES;
CREATEMATERIALIZEDVIEWmv_test_union_all
REFRESHFASTONDEMANDWITHROWID
AS
SELECTowner, object_name, subobject_name, object_id, data_object_id, object_type, created, last_ddl_time,TIMESTAMP, status,TEMPORARY,GENERATED, secondary,1marker,ROWIDrdfromtest1
UNIONALL
SELECTowner, object_name, subobject_name, object_id, data_object_id, object_type, created, last_ddl_time,TIMESTAMP, status,TEMPORARY,GENERATED, secondary,2marker,ROWIDrdfromtest2
UNIONALL
SELECTowner, object_name, subobject_name, object_id, data_object_id, object_type, created, last_ddl_time,TIMESTAMP, status,TEMPORARY,GENERATED, secondary,3marker,ROWIDrdfromtest3
´ø¾Û¼¯ÎﻯÊÓͼµÄ¿ìËÙË¢ÐÂ
1. ÎﻯÊÓͼÈÕÖ¾Ö¸¶¨rowidºÍincluding new values
2. Èç¹û±íÉèÉæ¼°µ½Ò»¸ö´óÁ¿µÄinsert»òÕßÖ±½Ó·¾¶¼ÓÔØ£¬deletes,update£¬Ö¸¶¨sequence
3. Ö§³ÖµÄº¯Êýsum,count,avg,stddev,variance,min,max
4. ±ØÐëÖ¸¶¨count(*)
5. Èç¹ûʹÓÃstddev,variance£¬ÄÇôcountºÍsum±ØÐëÖ¸¶¨¡£ORACLEÍÆ¼öͬʱָ¶¨sum(expr*expr)
6. selectÖеÄÁв»ÄÜÓÐÀ´×Ô¶à¸ö±íµÄ¸´ÔÓµÄ
select * from test where rownum <=10 ÏÂÃæÊǹØÓÚrownumµÄ½éÉÜ ================================ RownumºÍrow_number() over()µÄʹÓà ROWNUMÊÇOracle´Ó8¿ªÊ¼ÌṩµÄÒ»¸öαÁУ¬ÊǰÑSQL³öÀ´µÄ½á¹û½øÐбàºÅ£¬Ê¼ÖÕ´Ó1¿ªÊ¼£¬³£¼ûµÄÓÃ;¾ÍÊÇÓÃÀ´·ÖÒ³Êä³ö. ±ÈÈç SELECT * from torderdetail a WHERE ROWNUM <= 10 ÕâÌõÓï¾ä¾ ......