Array
Ushbu qo'llanmada siz PostgreSQL massivi
bilan qanday ishlashni va massivni
manipulyatsiya qilish uchun ba'zi qulay funktsiyalardan qanday foydalanishni o'rganasiz.
PostgreSQL-da bir xil ma'lumotlar turiga ega bo'lgan elementlar to'plami.
Massivlar bir o'lchovli, ko'p o'lchovli va hatto ichki qatorlar bo'lishi mumkin.
Har bir maʼlumot turi oʻzining qoʻshimcha massiv turiga ega, masalan, butun sonda integer[]
massiv turi, belgilarda character[]
massiv tipi mavjud.
Agar siz foydalanuvchi tomonidan belgilangan ma'lumotlar turini aniqlasangiz, PostgreSQL
siz uchun avtomatik ravishda mos keladigan massiv turini ham yaratadi.
Massiv turiga ega ustunni aniqlash uchun siz quyidagi sintaksisdan foydalanasiz
Sintaksisda biz ma'lumotlar turining bir o'lchovli massivini aniqlaymiz.
Masalan, quyidagi bayonot matn massivi bilan belgilangan phones
ustuni bilan contacts
deb nomlangan yangi jadval yaratadi.
phones
ustuni bir o'lchovli massiv bo'lib, unda kontaktda bo'lishi mumkin bo'lgan turli telefon raqamlari mavjud.
Ko'p o'lchovli massivni aniqlash uchun siz kvadrat qavslarni qo'shishingiz kerak.
Masalan, ikki o'lchovli massivni quyidagicha belgilashingiz mumkin:
Massivga ma'lumotlarni kiritish
Quyidagi bayonot kontaktlar jadvaliga yangi kontaktni kiritadi.
Ushbu misolda biz massiv qurish va uni contacts
jadvaliga kiritish uchun ARRAY
konstruktoridan foydalanamiz.
Shu bilan bir qatorda, jingalak
qavslardan quyidagi tarzda foydalanishingiz mumkin:
Ushbu bayonotda biz contacts
jadvaliga ikkita qatorni kiritamiz.
E'tibor bering, jingalak qavslardan foydalanganda siz massivni o'rash uchun "yagona tirnoq" - (')
dan, matn massivi elementlarini o'rash uchun "ikki tirnoq" - (")
dan foydalanasiz.
Massiv maʼlumotlari soʻraash
Quyidagi bayonot contacts
jadvalidan ma'lumotlarni oladi:
Chiqish:
Massiv elementiga kirish uchun siz kvadrat qavslar ichidagi pastki belgidan foydalanasiz []
.
Odatiy bo'lib, PostgreSQL massiv elementlari uchun bitta asoslangan raqamlashni qo'llaydi. Bu birinchi massiv elementi 1 raqamidan boshlanishini bildiradi.
Quyidagi bayonot kontaktning ismini va birinchi telefon raqamini oladi:
Chiqish:
Qatorlarni filtrlash sharti sifatida WHERE
bandidagi massiv elementidan foydalanishingiz mumkin.
Masalan, quyidagi soʻrov ikkinchi telefon raqami sifatida (408)-589-58423
telefon raqamiga ega boʻlgan kontaktlarni topadi:
Chiqish:
PostgreSQL massivini o'zgartirish
PostgreSQL massivning har bir elementini yoki butun massivni yangilash imkonini beradi.
Quyidagi bayonot Uilyam Geytning
ikkinchi telefon raqamini yangilaydi.
Chiqish:
Quyidagi bayonot butun massivni yangilaydi.
Chiqish:
PostgreSQL massivida qidiruv:
Aytaylik, siz (408)-589-5555
telefon raqamiga kim ega ekanligini bilmoqchi bo'lsangiz, telefon raqamining phones
massividagi joylashuvidan qat'i nazar, ANY()
funksiyasidan quyidagicha foydalanishingiz mumkin:
Chiqish:
Massivlarni kengaytirish
PostgreSQL massivni qatorlar roʻyxatiga kengaytirish uchun unnest()
funksiyasini taqdim etadi. Masalan, quyidagi so'rov phones
qatorining barcha telefon raqamlarini kengaytiradi.
Chiqish:
Xulosa:
PostgreSQL-da massiv bir xil turdagi ma'lumotlarga ega bo'lgan elementlar to'plamidir.
Ustun uchun bir o'lchovli massivni aniqlash uchun
data_type []
dan foydalaning.Massivning
indeks
elementiga kirish uchun[indeks]
sintaksisidan foydalaning. Birinchi element bitta indeksga ega.Massivni qatorlar roʻyxatiga kengaytirish uchun
unnest()
funksiyasidan foydalaning.
Last updated