CodeBlanks Logo Icon CodeBlanks

UPDATE'te dikkat

WHERE'siz UPDATE tehlikesini öğrenirsin.

Alt sorgu ile güncelleme

UPDATE içinde alt sorgu kullanarak başka tablodan gelen değeri yazabilirsin.

UPDATE products
SET price = (SELECT max_price FROM price_list WHERE pid = products.id);

Bu sorgu her ürünün fiyatını price_list tablosundan alır.

products tablosunda price = (SELECT max_price değeri güncellenir.

Alt sorgu ile güncelleme — ayrıntı

Alt sorgu tek değer döndürmelidir; yoksa hata verir. İlişkili alt sorgu ürün ürün çalışır.

Uygulama Alt sorgu ile güncelleme

products tablosunda id=1 olanın price değerini 10 yap.

Başlangıç kodu

query.sql
-- güncelle
UPDATE products
SET price = 10
WHERE

Örnek çözüm

query.sql
UPDATE products
SET price = 10
WHERE id = 1

Beklenen çıktı

1 satır güncellendi

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Alt sorgu

Soru
UPDATE products
SET price = (____ max_price FROM price_list WHERE pid = products.id);
Cevap
UPDATE products
SET price = (SELECT max_price FROM price_list WHERE pid = products.id);

Açıklama: Parantez içindeki alt sorgu SELECT ile başlar ve tek bir değer döndürmelidir.

2 UPDATE'te dikkat: kavramları eşleştir

Kavram Anlamı
UPDATE güncelle
SET yeni değer
SELECT alt sorgu
WHERE koşul

3 UPDATE içinde alt sorgu kaç değer döndürmeli?

  • Hiç
  • İki değer
  • Sınırsız
  • Tek değer Doğru cevap

Açıklama: Alt sorgu tek değer döndürmelidir.

Başlangıç bölümündeki tüm dersler