PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

एक वर्चर क्षेत्र के पहले अक्षर के आधार पर विभाजन तालिका

आप partition by . में व्यंजक का उपयोग कर सकते हैं खंड, उदा.:

create table my_table(name text)
partition by list (left(name, 1));

create table my_table_a
partition of my_table
for values in ('a');

create table my_table_b
partition of my_table
for values in ('b');

परिणाम:

insert into my_table 
values
    ('abba'), ('alfa'), ('beta');

select 'a' as partition, name from my_table_a
union all
select 'b' as partition, name from my_table_b;

 partition | name 
-----------+------
 a         | abba
 a         | alfa
 b         | beta
(3 rows)

यदि विभाजन केस असंवेदनशील होना चाहिए तो आप इसका उपयोग कर सकते हैं

create table my_table(name text)
partition by list (lower(left(name, 1)));

दस्तावेज़ीकरण में पढ़ें:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQLers के लिए PostgreSQL प्रशिक्षण

  2. वेब ऐप लॉन्च करने के लिए डॉकर का उपयोग करना, पोस्टग्रेस्क्ल डीबी से कनेक्ट नहीं हो सकता है?

  3. मुझे सरणी कॉलम बनाम बनाम का उपयोग कब करना चाहिए? रेल में संघ

  4. परिकलित फ़ील्ड के लिए Django क्वेरी अभिव्यक्ति जिसके लिए शर्तों और कास्टिंग की आवश्यकता होती है

  5. postgresql में बिना रुके शब्दों को हटा दें