2014-10-29 39 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

相關問題