2014-10-29 93 views
1

我想我可能有语法错误,例如当我查询P0时,我得到以所有字母开头的学校名称 - 它不限于字母A-E,这正是我想要的。如何按字母顺序对表格进行分区?

CREATE TABLE "AB"."SCHOOL4" 
    ( "SCHOOL_KEY" NUMBER(*,0), 
    "SCHOOL_IDENTIFIER" VARCHAR2(15 BYTE), 
    "SCHOOL_NAME" VARCHAR2(100 BYTE), 
    ) SEGMENT CREATION IMMEDIATE 
     PARTITION BY RANGE (SCHOOL_NAME) 
     ( PARTITION P0 VALUES LESS THAN ('F'), 
      PARTITION p1 VALUES LESS THAN ('Q'), 
      PARTITION p2 VALUES LESS THAN (MAXVALUE) 
      ) 
     TABLESPACE AB_ST2; 

我的问题: 我将如何完成这个分区表,以便值是按字母顺序分区A-E,F-R,Q-Z?

我的查询:

SELECT SCHOOL_NAME FROM SCHOOL4, DBA_SEGMENTS 
Where PARTITION_NAME = 'P0' and owner = 'AB' ; 

我改变了查询到什么锡安以下建议,并提出了预期值。

+1

查询它,你可以写你怎么查询呢? – Xion 2014-10-29 19:42:48

+0

SELECT SCHOOL_NAME FROM SCHOOL4,DBA_SEGMENTS 其中PARTITION_NAME ='P0'和owner ='AB'; – ShoSom 2014-10-29 20:03:32

回答

1

你尝试这样

Select * from SCHOOL4 partition (p0) 
+1

这提出了我的意图。谢谢。 – ShoSom 2014-10-29 20:21:19

相关问题