Mysql Table Partition (LIST Partition Örnekleri),
Table Partiton Çeşitlerinde List Partition’u şimdi örneklerle anlamaya çalışalım.
List Partition:
Örnek: Aşağıdaki müşteri tablomuzda id,unvan,adi,soyadi,kodu kolonları mevcuttur.
Burada yapmak istediğimiz kodu kolonundaki değerlere göre tabloyu 4 parçaya bölmek.
kodu 1,3,5,7,9,10 olanlar p0 bölümüne, 11,13,15 olanlar p1 bölümüne , 17,19,20 olanlar
p2 bölümüne ,21,23,25 olanlar p3 bölümüne atılacaktır.
|
CREATE TABLE musteri (
| id INT NOT NULL,
| unvan VARCHAR(30),
| adi VARCHAR(30),
| soyadi VARCHAR(30),
| kodu int
| )
| PARTITION BY LIST(kodu) (
| PARTITION p0 VALUES IN (1,3,5,7,9,10),
| PARTITION p1 VALUES IN (11,13,15),
| PARTITION p2 VALUES IN (17,19,20),
| PARTITION p3 VALUES IN (21,23,25)
| ); |
|
Bu tabloyu create ettikden sonra insertler geldikçe Mysql, kodu kolonunu değerlerine
göre gelen dataları uygun bölümlere yerleştirecektir.
|
PARTITION p3 VALUES IN (21,22,23,24,25) yerine
| VALUES LESS THAN(MAXVALUE) |
|
ibaresi kullanarak ta 25 den büyük kodlar gelirse bunları da
p3 bölümünde tutmasını sağlayabiliriz. Aksi durumda siz 26 kodlu bir satır insert
etmeye kalktığınızda uygun partition bulunamadı hatası alırsınız.
Tayfur BÖLER
Database Administrator
www.mysqlsupport.net