すべてのプロダクト
Search
ドキュメントセンター

PolarDB:指定されたパーティションの照会

最終更新日:May 28, 2024

このトピックでは、指定したパーティションとサブパーティションをクエリする方法について説明します。

構文

  • 指定されたパーティションを照会します。
    SELECT... FROM table_name PARTITION ( partition_name ); 
  • 指定されたサブパーティションを照会します。
    SELECT... FROM table_name SUBPARTITION ( subpartition_name ); 

パラメーター

パラメーター説明
table_nameテーブルの名前。
partition_nameパーティションの名前。
subpartition_nameサブパーティションの名前。

次の例に示すように、テスト用のsalesという名前のテーブルを作成し、テーブルにテストデータを挿入します。

テーブルの販売を作成する
(
  dept_no number,
  part_no varchar2,
  country varchar2(20),
  date date,
  金額番号
)
範囲によるパーティー (日付)
  SUBPARTITION BY LIST(country)
  (
    PARTITION q1_2012 
      VALUES LESS THAN('2012-Apr-01')
      (
        SUBPARTITION q1_europe VALUES ('FRANCE', 'ITALY'),
        SUBPARTITION q1_asia VALUES ('INDIA', 'PAKISTAN'),
        SUBPARTITION q1_americas VALUES ('US', 'CANADA')
       ),
  PARTITION q2_2012 
    VALUES LESS THAN('2012-Jul-01')
      (
        SUBPARTITION q2_europe VALUES ('FRANCE', 'ITALY'),
        SUBPARTITION q2_asia VALUES ('INDIA', 'PAKISTAN'),
        SUBPARTITION q2_americas VALUES ('US', 'CANADA')
       ),
  PARTITION q3_2012 
    VALUES LESS THAN('2012-Oct-01')
      (
        SUBPARTITION q3_europe VALUES ('FRANCE', 'ITALY'),
        SUBPARTITION q3_asia VALUES ('INDIA', 'PAKISTAN'),
        SUBPARTITION q3_americas VALUES ('US', 'CANADA')
       ),
  PARTITION q4_2012 
    VALUES LESS THAN('2013-Jan-01')      
      (
        SUBPARTITION q4_europe VALUES ('FRANCE', 'ITALY'),
        SUBPARTITION q4_asia VALUES ('INDIA', 'PAKISTAN'),
        SUBPARTITION q4_americas VALUES ('US', 'CANADA')
       )
);
販売値に挿入 (10、'4519b' 、'FRANCE' 、'17-Jan-2012 '、'45000');
販売値に挿入 (20、'3788a' 、'INDIA、'01-Mar-2012 '、'7700');
販売値に挿入 (40、'9519b' 、'US' 、'12-Apr-2012 '、'145000');
販売値に挿入 (20、'378a' 、'PAKISTAN' 、'04-Jun-2012 '、'37500');
販売値に挿入 (40、'4577b' 、'US '、'11-Nov-2012' 、'25000');
販売値に挿入 (30、'7588b' 、'CANADA' 、'14-Dec-2012 '、'50000');
販売値に挿入 (30、'9519b' 、'CANADA' 、'01-Feb-2012 '、'7700');
販売値に挿入 (30、'4519b' 、'CANADA' 、'08-Apr-2012 '、'120000');
売上高に挿入する (40、'3788a' 、'US '、'12-May-2012' 、'4950');
販売値に挿入 (10、'9519b' 、'ITALY' 、'07-Jul-2012 '、'15000');
販売値に挿入 (10、'9519a' 、'FRANCE' 、'18 Aug-2012 '、'650000');
販売値に挿入 (10、'9519b' 、'フランス '、'18 Aug-2012' 、'650000');
販売値に挿入 (20、'3788b' 、'INDIA、'21-Sept-2012 '、'5090');
売上高に挿入する (40、'4788a' 、'US '、'23-9月-2012' 、'4950');
販売値に挿入 (40、'4788b' 、'US '、'09-Oct-2012' 、'15000');
販売値に挿入 (20、'4519a' 、'INDIA' 、'18-Oct-2012 '、'650000');
販売値に挿入 (20、'4519b' 、'INDIA、'2-Dec-2012 '、'5090'); 
  • 次の例に示すように、指定されたパーティションを照会します。
    select * from sales partition(q1_2012);

    返された結果の例を次に示します。

    dept_no | part_no | 国 | 日付 | 金額
    -------- --------- --------------- -------------------------- -------------
          30 | 9519b | カナダ | 水曜日2月01 00:00:00 2012 | 75000
          10 | 4519b | フランス | 1月17日火曜日00:00:00 2012 | 45000
          20 | 3788a | インド | 木曜日01 00:00:00 2012 | 75000
    (3行) 
  • 次の例に示すように、指定されたサブパーティションを照会します。
    select * from salesサブパーティション (q3_europe);

    返された結果の例を次に示します。

    dept_no | part_no | 国 | 日付 | 金額
    -------- --------- --------------- -------------------------- -------------
          10 | 9519b | イタリア | 7月7日土曜日00:00:00 2012 | 15000
          10 | 9519a | フランス | 8月18日土曜日00:00:00 2012 | 650000
          10 | 9519b | フランス | 8月18日土曜日00:00:00 2012 | 650000
    (3行)