Ushbu qo'llanmada siz jadvaldagi mavjud ma'lumotlarni yangilash uchun PostgreSQL UPDATE bayonotidan qanday foydalanishni o'rganasiz.
PostgreSQL UPDATE bayonoti jadvaldagi ma'lumotlarni o'zgartirishga imkon beradi. Quyida UPDATE bayonotining sintaksisi tasvirlangan:
UPDATE table_name
SET column1 = value1,
column2 = value2,
...
WHERE condition;Ushbu sintaksisda:
-
Birinchidan,
UPDATEkalit so'zidan keyin ma'lumotlarni yangilamoqchi bo'lgan jadval nomini belgilang. -
Ikkinchidan,
SETkalit so'zidan keyin ustunlar va ularning yangi qiymatlarini belgilang.SETbandida ko'rinmaydigan ustunlar asl qiymatlarini saqlab qoladi. -
Uchinchidan,
WHEREbandi shartida qaysi qatorlarni yangilash kerakligini aniqlang.
WHERE bandi ixtiyoriy. Agar siz WHERE bandini o'tkazib yuborsangiz, UPDATE bayonoti jadvaldagi barcha qatorlarni yangilaydi.
UPDATE bayonoti muvaffaqiyatli bajarilganda, u quyidagi buyruq tegini qaytaradi:
UPDATE countcount - bu qiymatlari o'zgarmagan qatorlarni o'z ichiga olgan yangilangan qatorlar soni.
UPDATE bayonotida yangilangan qatorlarni qaytaradigan ixtiyoriy RETURNING bandi mavjud:
UPDATE table_name
SET column1 = value1,
column2 = value2,
...
WHERE condition
RETURNING * | output_expression AS output_name;Keling, PostgreSQL UPDATE bayonotidan foydalanishga misollar keltiraylik.
Namuna jadvalini o'rnatish
Quyidagi bayonotlar kurslar deb nomlangan jadvalni yaratadi va unga ba'zi ma'lumotlarni kiritadi:
DROP TABLE IF EXISTS courses;
CREATE TABLE courses(
course_id serial primary key,
course_name VARCHAR(255) NOT NULL,
description VARCHAR(500),
published_date date
);
INSERT INTO
courses(course_name, description, published_date)
VALUES
('PostgreSQL for Developers','A complete PostgreSQL for Developers','2020-07-13'),
('PostgreSQL Admininstration','A PostgreSQL Guide for DBA',NULL),
('PostgreSQL High Performance',NULL,NULL),
('PostgreSQL Bootcamp','Learn PostgreSQL via Bootcamp','2013-07-11'),
('Mastering PostgreSQL','Mastering PostgreSQL in 21 Days','2012-06-30');Quyidagi bayonot kurslar jadvalidagi ma'lumotlarni qaytaradi:
SELECT * FROM courses;Quyidagi bayonotda kursni id 3 bilan yangilash uchun UPDATE bayonotidan foydalaniladi. U published_date NULLdan "2020-08-01" ga o'zgartiriladi.
UPDATE courses
SET published_date = '2020-08-01'
WHERE course_id = 3;Bayonot bitta satr yangilanganligini ko'rsatuvchi quyidagi xabarni qaytaradi:
UPDATE 1Quyidagi bayonot yangilanishni tekshirish uchun id 3 bilan kursni tanlaydi:
SELECT *
FROM courses
WHERE course_id = 3;Quyidagi bayonot 2-kurs identifikatorini yangilaydi. Kursning published_date 2020-07-01 ga o'zgartiradi va yangilangan kursni qaytaradi.
UPDATE courses
SET published_date = '2020-07-01'
WHERE course_id = 2
RETURNING *;- Jadvalning bir yoki bir nechta ustunlaridagi ma'lumotlarni yangilash uchun PostgreSQL
UPDATEbayonotidan foydalaning. UPDATEbayonotidan yangilangan qatorlarni qaytarish uchunRETURNINGbandidan foydalaning


