SQL UPDATE — ma'lumotni o'zgartirish

INSERT bilan yangi ma’lumot qo’shdik. Ammo ma’lumot ko’pincha o’zgaradi: narx yangilanadi, ombor soni kamayadi. Mavjud qatorni o’zgartirish uchun UPDATE ishlatiladi.

mahsulotlar jadvali (boshlang’ich holat):

id nom narx soni turi
1 Olma 8000 50 meva
6 Qatiq 9000 0 sut mahsuloti

UPDATE — qiymatni yangilash

Yozilishi: UPDATE jadval SET ustun = yangi_qiymat WHERE shart. Olma narxini oshiramiz:

UPDATE mahsulotlar SET narx = 9000 WHERE nom = 'Olma';

O’zingiz ishga tushirib ko’ring — so’rovni tahrirlashingiz ham mumkin:

SQL · namuna baza

Tekshirish:

SELECT * FROM mahsulotlar WHERE nom = 'Olma';

Natija — narx yangilandi:

id nom narx soni turi
1 Olma 9000 50 meva

SET — qaysi ustunga qanday qiymat berishni bildiradi. WHERE esa qaysi qatorni o’zgartirishni aniqlaydi.

Bir nechta ustunni birga yangilash

SET da bir nechta ustunni vergul bilan sanash mumkin:

UPDATE mahsulotlar SET narx = 5000, soni = 10 WHERE nom = 'Qatiq';

Bu Qatiqning ham narxini, ham sonini bir yo’la o’zgartiradi — qator endi 5000 narx va 10 soni bilan turadi.

Mavjud qiymatga tayanib o’zgartirish

Yangi qiymat eski qiymatga bog’liq bo’lishi mumkin. Masalan, barcha ichimliklar narxini 10% ga oshiramiz:

UPDATE mahsulotlar SET narx = narx * 1.1 WHERE turi = 'ichimlik';

Bu yerda narx = narx * 1.1 — “yangi narx = eski narx ning 1.1 baravari”. Baza har qator uchun o’sha qatorning joriy narxidan hisoblaydi.

Amaliy mashq

Mavjud ma’lumotni o’zgartiring:

  1. Olma ning narxini 9000 ga o’zgartiring;
  2. SELECT bilan tekshiring;
  3. barcha 'meva' turidagi mahsulotlar narxini 10% oshiring;
  4. WHERE siz UPDATE yozing — nechta qator o’zgardi?
  5. soni = 0 bo’lganlarning sonini 10 ga o’rnating.

4-qadam eng xavfli xato: WHERE unutilsa nima bo’ladi?

Qisqacha xulosa

  • UPDATE jadval SET ustun = qiymat WHERE shart — mavjud qatorni o’zgartiradi.
  • WHERE majburiy odat: usiz barcha qatorlar o’zgaradi.
  • SET a = .., b = .. — bir vaqtda bir nechta ustun.
  • Yangi qiymat eskisiga tayanishi mumkin: narx = narx * 1.1.
  • Xavfsiz yo’l: avval shartni SELECT bilan tekshiring.

Keyingi darsda DELETE bilan qatorni o’chirishni ko’ramiz — u ham WHERE bilan ishlaydi va yanada ehtiyot talab qiladi.

Bu dars foydali bo'ldimi?

marta ko'rildi