Khi nhập liệu hàng loạt, một số sản phẩm của cửa hàng Bách Hóa Xanh bị bỏ trống giá (NULL). Chính sách tạm thời: gán cho các sản phẩm đó giá thấp nhất trong số các sản phẩm cùng ngành hàng đã có giá. Hãy UPDATE qua bảng dẫn xuất (derived table) rồi in kết quả.
Bảng sanpham:
| Cột | Kiểu | Ý nghĩa |
|---|---|---|
| masp | varchar(10) | Mã sản phẩm (khóa) |
| nganhhang | varchar(30) | Ngành hàng |
| gia | int | Giá bán (đồng), có thể NULL |
Mỗi ngành hàng có sản phẩm bị thiếu giá luôn có ít nhất một sản phẩm đã có giá.
Ngành 'douong' có giá 5000 và 12000, sản phẩm thiếu giá cùng ngành được gán 5000.
Script T-SQL tạo bảng sanpham và chèn dữ liệu (giá thiếu ghi NULL).
1≤ số dòng ≤1000; giá khác NULL thỏa 0<gia≤108.
Sau UPDATE, một SELECT in masp, nganhhang, gia, sắp xếp theo masp tăng dần.
Ví dụ:
Đầu vào:
CREATE TABLE sanpham (masp varchar(10), nganhhang varchar(30), gia int);
INSERT INTO sanpham VALUES ('SP1','douong',5000),('SP2','douong',12000),('SP3','douong',NULL),('SP4','banhkeo',20000),('SP5','banhkeo',NULL);Đầu ra:
SP1 douong 5000
SP2 douong 12000
SP3 douong 5000
SP4 banhkeo 20000
SP5 banhkeo 20000
Giải thích:
Đang tải editor...