需求

对于分区表,对于范围分区类型来说,查询MAX分区及对应的分区范围。

  1. ==查询分区表对应的最大分区信息
  2. ==排除了自扩展分区(如果是自扩展分区,但是最大的分区不是自扩展的并未排除在外)
  3. ==排除了删除的分区表及SYS用户下的,显示范围类型分区表最大分区及分区范围
  4. WITH A AS
  5. (SELECT TABLE_OWNER, TABLE_NAME, MAX(PARTITION_POSITION) POSI
  6. FROM DBA_TAB_PARTITIONS
  7. WHERE TABLE_NAME IN (SELECT DISTINCT TABLE_NAME
  8. FROM DBA_PART_TABLES
  9. WHERE OWNER NOT LIKE '%SYS%'
  10. AND PARTITIONING_TYPE = 'RANGE')
  11. GROUP BY TABLE_OWNER, TABLE_NAME),
  12. B AS (
  13. SELECT P.TABLE_OWNER, P.TABLE_NAME, PARTITION_NAME, HIGH_VALUE
  14. FROM DBA_TAB_PARTITIONS P, A
  15. WHERE P.TABLE_OWNER = A.TABLE_OWNER
  16. AND P.TABLE_NAME = A.TABLE_NAME
  17. AND P.PARTITION_POSITION = A.POSI
  18. AND P.TABLE_NAME NOT LIKE 'BIN$%'
  19. AND P.INTERVAL!='YES'),
  20. Aa AS
  21. (SELECT TABLE_OWNER, TABLE_NAME,PARTITION_NAME, MAX(SUBPARTITION_POSITION) POSI
  22. FROM DBA_TAB_SUBPARTITIONS
  23. WHERE (TABLE_OWNER,TABLE_NAME) IN (SELECT DISTINCT OWNER,TABLE_NAME
  24. FROM DBA_PART_TABLES
  25. WHERE OWNER NOT LIKE '%SYS%'
  26. AND SUBPARTITIONING_TYPE = 'RANGE')
  27. GROUP BY TABLE_OWNER,TABLE_NAME,PARTITION_NAME),
  28. Bb AS (
  29. SELECT P.TABLE_OWNER, P.TABLE_NAME, P.PARTITION_NAME||' '||P.SUBPARTITION_NAME AS "PARTITION_NAME",HIGH_VALUE
  30. FROM DBA_TAB_SUBPARTITIONS P, Aa
  31. WHERE P.TABLE_OWNER = Aa.TABLE_OWNER
  32. AND P.TABLE_NAME = Aa.TABLE_NAME
  33. AND p.PARTITION_NAME=Aa.PARTITION_NAME
  34. AND P.SUBPARTITION_POSITION = Aa.POSI
  35. AND P.TABLE_NAME NOT LIKE 'BIN$%'
  36. AND P.INTERVAL!='YES')
  37. select * from B
  38. union all
  39. select * from Bb;
  40. TABLE_OWNE TABLE_NAME PARTITION_NAME HIGH_VALUE
  41. ---------- ---------- -------------------- --------------------------------------------------------------------------------
  42. SCOTT A1 P15 TO_DATE(' 2020-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  43. SCOTT A12 P_MAX MAXVALUE
  44. SCOTT A2 SYS_P42 MAXVALUE
  45. SCOTT A11 P14 TO_DATE(' 2020-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  46. SCOTT B1 D228 PD228_13 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  47. SCOTT B11 D240 PD240_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  48. SCOTT B1 D229 PD229_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  49. SCOTT B12 D230 PD230_MAX MAXVALUE
  50. SCOTT B2 D230 PD230_MAX MAXVALUE
  51. SCOTT B11 D228 PD228_13 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  52. SCOTT B2 D228 PD228_MAX MAXVALUE
  53. SCOTT B2 D229 PD229_MAX MAXVALUE
  54. SCOTT B1 D240 PD240_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  55. SCOTT B11 D243 PD243_2 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  56. SCOTT B12 D229 PD229_MAX MAXVALUE
  57. SCOTT B1 D241 PD241_2 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  58. SCOTT B11 D229 PD229_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  59. SCOTT B11 D241 PD241_2 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  60. SCOTT B11 D242 PD242_2 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  61. SCOTT B12 D228 PD228_MAX MAXVALUE
  62.  
  63. rows selected.
  64.  
  65. ===使用如下链接,达到排除MAX以及后续可以加条件进行过滤
  66. 参考如下链接
  67. http://note.youdao.com/noteshare?id=0d67e2b6ce09f83b72be1f54409ae6bf&sub=3B635C69EEB449A495585F0F79A418B2
  68. http://www.oracleplus.net/arch/281.html
  69. 案例:Oracle数据库long查询结果转换为varchar2类型方法的操作步骤
  70. WITH A AS
  71. (SELECT TABLE_OWNER, TABLE_NAME, MAX(PARTITION_POSITION) POSI
  72. FROM DBA_TAB_PARTITIONS
  73. WHERE TABLE_NAME IN (SELECT DISTINCT TABLE_NAME
  74. FROM DBA_PART_TABLES
  75. WHERE OWNER NOT LIKE '%SYS%'
  76. AND PARTITIONING_TYPE = 'RANGE')
  77. GROUP BY TABLE_OWNER, TABLE_NAME),
  78. B AS (
  79. SELECT P.TABLE_OWNER, P.TABLE_NAME, PARTITION_NAME, HIGH_VALUE, INTERVAL
  80. FROM DBA_TAB_PARTITIONS P, A
  81. WHERE P.TABLE_OWNER = A.TABLE_OWNER
  82. AND P.TABLE_NAME = A.TABLE_NAME
  83. AND P.PARTITION_POSITION = A.POSI
  84. AND P.TABLE_NAME NOT LIKE 'BIN$%'
  85. AND P.INTERVAL!='YES'),
  86. C AS (
  87. SELECT *
  88. FROM (SELECT b.TABLE_OWNER,
  89. b.TABLE_NAME,
  90. b.PARTITION_NAME,
  91. LONG_HELP.SUBSTR_OF('SELECT HIGH_VALUE
  92. FROM DBA_TAB_PARTITIONS WHERE DBA_TAB_PARTITIONS.TABLE_OWNER=:TABLE_OWNER
  93. AND TABLE_NAME=:TABLE_NAME
  94. AND PARTITION_NAME=:PARTITION_NAME',
  95. ,
  96. ,
  97. 'TABLE_OWNER',
  98. DBA_TAB_PARTITIONS.TABLE_OWNER,
  99. 'TABLE_NAME',
  100. DBA_TAB_PARTITIONS.TABLE_NAME,
  101. 'PARTITION_NAME',
  102. DBA_TAB_PARTITIONS.PARTITION_NAME) HIGH_VALUE
  103. FROM DBA_TAB_PARTITIONS,B WHERE DBA_TAB_PARTITIONS.TABLE_OWNER=B.TABLE_OWNER AND DBA_TAB_PARTITIONS.TABLE_NAME=B.TABLE_NAME AND DBA_TAB_PARTITIONS.PARTITION_NAME=B.PARTITION_NAME )
  104. where high_value not like 'MAXVALUE%'),
  105. Aa AS
  106. (SELECT TABLE_OWNER, TABLE_NAME,PARTITION_NAME, MAX(SUBPARTITION_POSITION) POSI
  107. FROM DBA_TAB_SUBPARTITIONS
  108. WHERE (TABLE_OWNER,TABLE_NAME) IN (SELECT DISTINCT OWNER,TABLE_NAME
  109. FROM DBA_PART_TABLES
  110. WHERE OWNER NOT LIKE '%SYS%'
  111. AND SUBPARTITIONING_TYPE = 'RANGE')
  112. GROUP BY TABLE_OWNER,TABLE_NAME,PARTITION_NAME),
  113. Bb AS (
  114. SELECT P.TABLE_OWNER, P.TABLE_NAME, P.PARTITION_NAME, P.SUBPARTITION_NAME,HIGH_VALUE
  115. FROM DBA_TAB_SUBPARTITIONS P, Aa
  116. WHERE P.TABLE_OWNER = Aa.TABLE_OWNER
  117. AND P.TABLE_NAME = Aa.TABLE_NAME
  118. AND p.PARTITION_NAME=Aa.PARTITION_NAME
  119. AND P.SUBPARTITION_POSITION = Aa.POSI
  120. AND P.TABLE_NAME NOT LIKE 'BIN$%'
  121. AND P.INTERVAL!='YES'),
  122. Cc as (
  123. SELECT TABLE_OWNER,TABLE_NAME,PARTITION_NAME||' '||SUBPARTITION_NAME AS "PARTITION_NAME",HIGH_VALUE
  124. FROM (SELECT Bb.TABLE_OWNER,
  125. Bb.TABLE_NAME,
  126. Bb.PARTITION_NAME,
  127. Bb.SUBPARTITION_NAME,
  128. LONG_HELP.SUBSTR_OF('SELECT HIGH_VALUE
  129. FROM DBA_TAB_SUBPARTITIONS WHERE TABLE_OWNER=:TABLE_OWNER
  130. AND TABLE_NAME=:TABLE_NAME
  131. AND PARTITION_NAME=:PARTITION_NAME
  132. AND SUBPARTITION_NAME=:SUBPARTITION_NAME',
  133. ,
  134. ,
  135. 'TABLE_OWNER',
  136. DBA_TAB_SUBPARTITIONS.TABLE_OWNER,
  137. 'TABLE_NAME',
  138. DBA_TAB_SUBPARTITIONS.TABLE_NAME,
  139. 'PARTITION_NAME',
  140. DBA_TAB_SUBPARTITIONS.PARTITION_NAME,
  141. 'SUBPARTITION_NAME',
  142. DBA_TAB_SUBPARTITIONS.SUBPARTITION_NAME) HIGH_VALUE
  143. FROM DBA_TAB_SUBPARTITIONS,Bb WHERE DBA_TAB_SUBPARTITIONS.TABLE_OWNER=Bb.TABLE_OWNER AND DBA_TAB_SUBPARTITIONS.TABLE_NAME=Bb.TABLE_NAME AND DBA_TAB_SUBPARTITIONS.PARTITION_NAME=Bb.PARTITION_NAME AND DBA_TAB_SUBPARTITIONS.SUBPARTITION_NAME=Bb.SUBPARTITION_NAME)
  144. where high_value not like 'MAXVALUE%')
  145. select * from C
  146. union all
  147. select * from Cc;
  148. TABLE_OWNE TABLE_NAME PARTITION_NAME HIGH_VALUE
  149. ---------- ---------- ------------------------------ -------------------------------------------------------------------------------------
  150. SCOTT A1 P15 TO_DATE(' 2020-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
  151. SCOTT A11 P14 TO_DATE(' 2020-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
  152. SCOTT B1 D228 PD228_13 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
  153. SCOTT B1 D229 PD229_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
  154. SCOTT B1 D240 PD240_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
  155. SCOTT B1 D241 PD241_2 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
  156. SCOTT B11 D228 PD228_13 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
  157. SCOTT B11 D229 PD229_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
  158. SCOTT B11 D240 PD240_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
  159. SCOTT B11 D241 PD241_2 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
  160. SCOTT B11 D242 PD242_2 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
  161. SCOTT B11 D243 PD243_2 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
  162.  
  163. rows selected.

---测试,验证分区的编号是否是有顺序的,及MAX编号是否对应MAX分区

  1. SQL> select TABLE_OWNER,TABLE_NAME,PARTITION_NAME,PARTITION_POSITION from DBA_TAB_PARTITIONS where table_owner='SCOTT' and TABLE_NAME='A2';
  2. TABLE_OWNE TABLE_NAME PARTITION_NAME PARTITION_POSITION
  3. ---------- ------------------------------ -------------------- ------------------
  4. SCOTT A2 P1
  5. SCOTT A2 P2
  6. SCOTT A2 P3
  7. SCOTT A2 P4
  8. SCOTT A2 P5
  9. SCOTT A2 P6
  10. SCOTT A2 P7
  11. SCOTT A2 P8
  12. SCOTT A2 P9
  13. SCOTT A2 P10
  14. SCOTT A2 P11
  15. SCOTT A2 P12
  16. SCOTT A2 P13
  17. SCOTT A2 P14
  18. SCOTT A2 SYS_P41
  19. SCOTT A2 SYS_P42
  20. rows selected.
  21.  
  22. SQL> select table_owner,table_name,PARTITION_NAME,HIGH_VALUE from DBA_TAB_PARTITIONS where table_owner='SCOTT' and table_name='A2';
  23. TABLE_OWNE TABLE_NAME PARTITION_NAME HIGH_VALUE
  24. ---------- ------------------------------ -------------------- ------------------------------------------------------------------------------------------
  25. SCOTT A2 P1 TO_DATE(' 2019-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  26. SCOTT A2 P10 TO_DATE(' 2019-11-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  27. SCOTT A2 P11 TO_DATE(' 2019-12-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  28. SCOTT A2 P12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  29. SCOTT A2 P13 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  30. SCOTT A2 P14 TO_DATE(' 2020-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  31. SCOTT A2 P2 TO_DATE(' 2019-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  32. SCOTT A2 P3 TO_DATE(' 2019-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  33. SCOTT A2 P4 TO_DATE(' 2019-05-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  34. SCOTT A2 P5 TO_DATE(' 2019-06-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  35. SCOTT A2 P6 TO_DATE(' 2019-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  36. SCOTT A2 P7 TO_DATE(' 2019-08-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  37. SCOTT A2 P8 TO_DATE(' 2019-09-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  38. SCOTT A2 P9 TO_DATE(' 2019-10-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  39. SCOTT A2 SYS_P41 TO_DATE(' 2020-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  40. SCOTT A2 SYS_P42 MAXVALUE
  41. rows selected.
  42.  
  43. SQL>alter table a2 split partition SYS_P41 at (to_date('2020-03-15','yyyy-mm-dd')) into (partition SYS_P43,partition SYS_P41);
  44. SQL> select TABLE_OWNER,TABLE_NAME,PARTITION_NAME,PARTITION_POSITION from DBA_TAB_PARTITIONS where table_owner='SCOTT' and TABLE_NAME='A2';
  45.  
  46. TABLE_OWNE TABLE_NAME PARTITION_NAME PARTITION_POSITION
  47. ---------- ------------------------------ -------------------- ------------------
  48. SCOTT A2 P1
  49. SCOTT A2 P2
  50. SCOTT A2 P3
  51. SCOTT A2 P4
  52. SCOTT A2 P5
  53. SCOTT A2 P6
  54. SCOTT A2 P7
  55. SCOTT A2 P8
  56. SCOTT A2 P9
  57. SCOTT A2 P10
  58. SCOTT A2 P11
  59. SCOTT A2 P12
  60. SCOTT A2 P13
  61. SCOTT A2 P14
  62. SCOTT A2 SYS_P43
  63. SCOTT A2 SYS_P41
  64. SCOTT A2 SYS_P42
  65.  
  66. rows selected.
  67. 也就是说,Oracle会根据分区范围调整PARTITION_POSITION 值,因此查询范围最大的分区,可以使用PARTITION_POSITION MAX对应得分区名称
  68.  
  69. SQL>
  70. select TABLE_OWNER,TABLE_NAME,PARTITION_NAME,SUBPARTITION_NAME,SUBPARTITION_POSITION,HIGH_VALUE from DBA_TAB_SUBPARTITIONS WHERE TABLE_OWNER ='SCOTT' and table_name='B2';
  71. TABLE_OWNE TABLE_NAME PARTITION_ SUBPARTITION_NAME SUBPARTITION_POSITION HIGH_VALUE
  72. ---------- ---------- ---------- -------------------- --------------------- -------------------------------------------------------------------------------------
  73. SCOTT B2 D228 PD228_1 TO_DATE(' 2019-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  74. SCOTT B2 D228 PD228_2 TO_DATE(' 2019-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  75. SCOTT B2 D228 PD228_3 TO_DATE(' 2019-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  76. SCOTT B2 D228 PD228_4 TO_DATE(' 2019-05-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  77. SCOTT B2 D228 PD228_5 TO_DATE(' 2019-06-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  78. SCOTT B2 D228 PD228_6 TO_DATE(' 2019-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  79. SCOTT B2 D228 PD228_7 TO_DATE(' 2019-08-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  80. SCOTT B2 D228 PD228_8 TO_DATE(' 2019-09-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  81. SCOTT B2 D228 PD228_9 TO_DATE(' 2019-10-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  82. SCOTT B2 D228 PD228_10 TO_DATE(' 2019-11-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  83. SCOTT B2 D228 PD228_11 TO_DATE(' 2019-12-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  84. SCOTT B2 D228 PD228_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  85. SCOTT B2 D228 PD228_13 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  86. SCOTT B2 D228 PD228_14 TO_DATE(' 2020-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  87. SCOTT B2 D228 PD228_15 TO_DATE(' 2020-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  88. SCOTT B2 D228 PD228_MAX MAXVALUE
  89. SCOTT B2 D229 PD229_1 TO_DATE(' 2019-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  90. SCOTT B2 D229 PD229_2 TO_DATE(' 2019-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  91. SCOTT B2 D229 PD229_3 TO_DATE(' 2019-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  92. SCOTT B2 D229 PD229_4 TO_DATE(' 2019-05-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  93. SCOTT B2 D229 PD229_5 TO_DATE(' 2019-06-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  94. SCOTT B2 D229 PD229_6 TO_DATE(' 2019-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  95. SCOTT B2 D229 PD229_7 TO_DATE(' 2019-08-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  96. SCOTT B2 D229 PD229_8 TO_DATE(' 2019-09-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  97. SCOTT B2 D229 PD229_9 TO_DATE(' 2019-10-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  98. SCOTT B2 D229 PD229_10 TO_DATE(' 2019-11-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  99. SCOTT B2 D229 PD229_11 TO_DATE(' 2019-12-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  100. SCOTT B2 D229 PD229_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  101. SCOTT B2 D229 PD229_MAX MAXVALUE
  102. SCOTT B2 D230 PD230_1 TO_DATE(' 2019-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  103. SCOTT B2 D230 PD230_2 TO_DATE(' 2019-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  104. SCOTT B2 D230 PD230_3 TO_DATE(' 2019-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  105. SCOTT B2 D230 PD230_4 TO_DATE(' 2019-05-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  106. SCOTT B2 D230 PD230_5 TO_DATE(' 2019-06-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  107. SCOTT B2 D230 PD230_6 TO_DATE(' 2019-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  108. SCOTT B2 D230 PD230_7 TO_DATE(' 2019-08-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  109. SCOTT B2 D230 PD230_8 TO_DATE(' 2019-09-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  110. SCOTT B2 D230 PD230_9 TO_DATE(' 2019-10-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  111. SCOTT B2 D230 PD230_10 TO_DATE(' 2019-11-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  112. SCOTT B2 D230 PD230_11 TO_DATE(' 2019-12-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  113. SCOTT B2 D230 PD230_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  114. SCOTT B2 D230 PD230_MAX MAXVALUE
  115.  
  116. rows selected.
  117. SQL>alter table scott.b2
  118. split subpartition PD228_MAX at (to_date('2020-05-01','yyyy-mm-dd')) into (
  119. subpartition PD228_16,
  120. subpartition PD228_MAX
  121. ) update indexes;
  122.  
  123. select TABLE_OWNER,TABLE_NAME,PARTITION_NAME,SUBPARTITION_NAME,SUBPARTITION_POSITION,HIGH_VALUE from DBA_TAB_SUBPARTITIONS WHERE TABLE_OWNER ='SCOTT' and table_name='B2';
  124.  
  125. TABLE_OWNE TABLE_NAME PARTITION_ SUBPARTITION_NAME SUBPARTITION_POSITION HIGH_VALUE
  126. ---------- ---------- ---------- -------------------- --------------------- -------------------------------------------------------------------------------------
  127. SCOTT B2 D228 PD228_1 TO_DATE(' 2019-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  128. SCOTT B2 D228 PD228_2 TO_DATE(' 2019-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  129. SCOTT B2 D228 PD228_3 TO_DATE(' 2019-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  130. SCOTT B2 D228 PD228_4 TO_DATE(' 2019-05-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  131. SCOTT B2 D228 PD228_5 TO_DATE(' 2019-06-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  132. SCOTT B2 D228 PD228_6 TO_DATE(' 2019-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  133. SCOTT B2 D228 PD228_7 TO_DATE(' 2019-08-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  134. SCOTT B2 D228 PD228_8 TO_DATE(' 2019-09-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  135. SCOTT B2 D228 PD228_9 TO_DATE(' 2019-10-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  136. SCOTT B2 D228 PD228_10 TO_DATE(' 2019-11-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  137. SCOTT B2 D228 PD228_11 TO_DATE(' 2019-12-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  138. SCOTT B2 D228 PD228_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  139. SCOTT B2 D228 PD228_13 TO_DATE(' 2020-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  140. SCOTT B2 D228 PD228_14 TO_DATE(' 2020-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  141. SCOTT B2 D228 PD228_15 TO_DATE(' 2020-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  142. SCOTT B2 D228 PD228_16 TO_DATE(' 2020-05-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  143. SCOTT B2 D228 PD228_MAX MAXVALUE
  144.  
  145. SCOTT B2 D229 PD229_1 TO_DATE(' 2019-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  146. SCOTT B2 D229 PD229_2 TO_DATE(' 2019-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  147. SCOTT B2 D229 PD229_3 TO_DATE(' 2019-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  148. SCOTT B2 D229 PD229_4 TO_DATE(' 2019-05-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  149. SCOTT B2 D229 PD229_5 TO_DATE(' 2019-06-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  150. SCOTT B2 D229 PD229_6 TO_DATE(' 2019-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  151. SCOTT B2 D229 PD229_7 TO_DATE(' 2019-08-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  152. SCOTT B2 D229 PD229_8 TO_DATE(' 2019-09-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  153. SCOTT B2 D229 PD229_9 TO_DATE(' 2019-10-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  154. SCOTT B2 D229 PD229_10 TO_DATE(' 2019-11-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  155. SCOTT B2 D229 PD229_11 TO_DATE(' 2019-12-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  156. SCOTT B2 D229 PD229_12 TO_DATE(' 2020-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
  157. SCOTT B2 D229 PD229_MAX MAXVALUE

编写SQL查询范围分区类型,MAX分区范围的更多相关文章

  1. Hibernate应用SQL查询返回实体类型

    Hibernate应用SQL查询返回实体类型 Hibernate使用SQL查询返回实体类型 以前,使用SQL查询,结果放在 RS 结果集中,还要去转换影射到Java类中.Hibernate中,可以自动 ...

  2. Hibernate通过自编写sql查询

    public List<InterProductMsg> selectIsHaveProductid(String productId) { String sql="SELECT ...

  3. 编写sql查询语句思路

    编写查询语句思路/* 1.首先确定最终输出结果的列,包括几个方面:A.首先这些列来自于一个 表.还是多个表,如果是多个表则可能用到多表查询的(等值连接.不等值 连接.外连接.自连接):B.这些列是直接 ...

  4. MySQL表的四种分区类型

    MySQL表的四种分区类型 一.什么是表分区 通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了. 如:某用户表的记录超过了600万条,那么就可以根据入库日期将表 ...

  5. mysql表分区(摘自 MySQL表的四种分区类型)

    一.什么是表分区通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了. 如:某用户表的记录超过了600万条,那么就可以根据入库日期将表分区,也可以根据所在地将表分区 ...

  6. (1.5)MySQL表的5种分区类型

    (1.5)MySQL表的5种分区类型 关键词:mysql表分区    小细节: (1)Null 将会放入最小范围区间 (2)无论哪种类型的分区,要么没有主键.唯一键,要么分区表的主键/唯一键都必须包含 ...

  7. 如何编写更好的SQL查询:终极指南-第一部分

    结构化查询语言(SQL)是数据挖掘分析行业不可或缺的一项技能,总的来说,学习这个技能是比较容易的.对于SQL来说,编写查询语句只是第一步,确保查询语句高效并且适合于你的数据库操作工作,才是最重要的.这 ...

  8. hive SQL 静态分区和 动态分区

    Hive 分区介绍: hive中简单介绍分区表(partition table),含动态分区(dynamic partition)与静态分区(static partition) hive中创建分区表没 ...

  9. mysql分区表之二:MySQL的表的四种分区类型介绍

    一.什么是表分区 通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了.如:某用户表的记录超过了600万条,那么就可以根据入库日期将表分区,也可以根据所在地将表分区 ...

随机推荐

  1. Python--day64--Bootstrap样式的使用

    Bootstrap样式网址:https://v3.bootcss.com

  2. H3C 通配符掩码的应用示例

  3. P1031 栈的序列

    题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序 ...

  4. 11-28-----vertor和list使用场景

    1.vector拥有一段连续的内存空间,因此支持随机访问,如果需要高效的随机访问,而不子啊胡插入和删除的效率,使用vector, 2.list拥有一段不连续的内存空间,如果需要高效的插入和删除,而不关 ...

  5. jquery 选择多级父子元素

    <div class="box"> <div class="item"> <div class="out"&g ...

  6. 一道非常棘手的 Java 面试题:i++ 是线程安全的吗

    转载自  一道非常棘手的 Java 面试题:i++ 是线程安全的吗 i++ 是线程安全的吗? 相信很多中高级的 Java 面试者都遇到过这个问题,很多对这个不是很清楚的肯定是一脸蒙逼.内心肯定还在质疑 ...

  7. h5&css3

    HTML5 HTML5简介 万维网的核心语言.标准通用标记语言下的一个应用超文本标记语言(HTML)的第五次重大修改.作为新HTML语言,具有新的元素,属性和行为 它具有更大的技术集,允许更多样化和强 ...

  8. Java零散记录

    接口不能被实例化,所以其成员变量必须为不可修改的,就是常量.

  9. 百度DMA+小度App的蓝牙语音解决方案技术难点解析

    前记   你平时在商场看到的语音助手,看起来非常的简单,其实,这个小小语音助手的背后,是一个非常的复杂的技术支撑.从前端到后端的技术依次是:前端语音降噪技术,高效的音频编解码技术,蓝牙双模技术,DMA ...

  10. LINQ 实现多字段关联查询 C#

    var query = from main in _userDeviceChannelRole.Table join deviceChannelInfo in _deviceChannelReposi ...