CẬP NHẬT truy vấn với điều kiện if other trong MySQL

Thí dụ

Trả về "YES" nếu điều kiện là TRUE, hoặc "NO" nếu điều kiện là FALSE

CHỌN NẾU(500<1000, "CÓ", "KHÔNG");

Tự mình thử »


Định nghĩa và cách sử dụng

Hàm IF() trả về một giá trị nếu điều kiện là TRUE hoặc giá trị khác nếu điều kiện là FALSE

cú pháp

IF(điều kiện, value_if_true, value_if_false)

Giá trị tham số

Tham sốMô tảđiều kiệnBắt buộc. Giá trị của testvalue_if_trueRequired. Giá trị trả về nếu điều kiện là TRUEvalue_if_falseRequired. Giá trị trả về nếu điều kiện là FALSE

chi tiết kỹ thuật


Thêm ví dụ

Thí dụ

Trả về 5 nếu điều kiện là TRUE, hoặc 10 nếu điều kiện là FALSE

CHỌN NẾU(500<1000, 5, 10);

Tự mình thử »

Thí dụ

Kiểm tra xem hai chuỗi có giống nhau không và trả về "CÓ" nếu đúng hoặc "KHÔNG" nếu không

CHỌN NẾU(STRCMP("xin chào","tạm biệt") = 0, "CÓ", "KHÔNG");

Tự mình thử »

Thí dụ

Trả về "MORE" nếu điều kiện là TRUE, hoặc "LESS" nếu điều kiện là FALSE

CHỌN OrderID, Số lượng, IF(Số lượng>10, "THÊM", "ÍT")
TỪ Chi tiết đặt hàng;

Tự mình thử »

Quan trọng. Chú ý tuyên bố. mydb.commit(). Cần phải thực hiện các thay đổi, nếu không thì không có thay đổi nào được thực hiện đối với bảng

Lưu ý mệnh đề WHERE trong cú pháp UPDATE. Mệnh đề WHERE chỉ định bản ghi hoặc bản ghi nào sẽ được cập nhật. Nếu bạn bỏ qua mệnh đề WHERE, tất cả các bản ghi sẽ được cập nhật


CẬP NHẬT truy vấn với điều kiện if other trong MySQL


Ngăn chặn SQL injection

Nó được coi là một cách thực hành tốt để thoát khỏi các giá trị của bất kỳ truy vấn nào, kể cả trong các câu lệnh cập nhật

Điều này là để ngăn chặn việc tiêm SQL, đây là một kỹ thuật hack web phổ biến để phá hủy hoặc sử dụng sai cơ sở dữ liệu của bạn

Trong hướng dẫn này, chúng ta sẽ xem xét các cách khác nhau để cập nhật các hàng trong bảng bằng cách sử dụng SQL tiến triển từ các cập nhật chung hơn sang các phương pháp cụ thể hơn

Cập nhật đầy đủ

Nếu mọi trường cần được cập nhật thành cùng một giá trị, bạn có thể thực hiện việc đó bằng cách sử dụng lệnh UPDATE đơn giản

UPDATE table
SET col = new_value;

Cập nhật có điều kiện

Để thực hiện cập nhật có điều kiện tùy thuộc vào việc giá trị hiện tại của một cột có khớp với điều kiện hay không, bạn có thể thêm mệnh đề WHERE xác định điều này. Đầu tiên, cơ sở dữ liệu sẽ tìm các hàng khớp với mệnh đề WHERE và sau đó chỉ thực hiện cập nhật trên các hàng đó

UPDATE table
SET col = new_value
WHERE col = old_value;

Để mở rộng vấn đề này, bạn có thể thêm bất kỳ thứ gì vào mệnh đề WHERE mà bạn thích miễn là đó là một biểu thức hợp lệ. Vì vậy, để thực hiện cập nhật dựa trên giá trị của một cột khác trong cùng một bảng, bạn có thể thực hiện như sau

UPDATE table
SET col = new_value
WHERE other_col = some_other_value;

Vì mệnh đề WHERE có thể chứa bất kỳ biểu thức hợp lệ nào, nên bạn cũng có khả năng thực hiện cập nhật khi nhiều cột đáp ứng tiêu chí

UPDATE table
SET col = new_value
WHERE col = old_value
AND other_col = some_other_value;

UPDATE table
SET col = new_value
WHERE col = old_value
OR other_col = some_other_value;

Như bạn có thể thấy, bạn có thể mở rộng mệnh đề WHERE bao nhiêu tùy thích để lọc xuống các hàng nhằm cập nhật những gì bạn cần

Bây giờ điều gì sẽ xảy ra nếu bạn muốn cập nhật các hàng trong một bảng dựa trên điều kiện của một bảng khác?

Vì mệnh đề WHERE có thể chứa bất kỳ biểu thức hợp lệ nào, nên bạn có thể sử dụng truy vấn con

UPDATE table
SET col = new_value
WHERE other_col IN (
SELECT other_col
FROM other_table
WHERE conditional_col = 1
);

Bạn cũng có thể sử dụng truy vấn con trong phần

UPDATE table
SET col = new_value
WHERE col = old_value;
4 của câu lệnh nếu bạn muốn đặt cột thành một giá trị trong bảng khác

UPDATE table
SET col = (
SELECT other_col
FROM other_table
WHERE other_table.table_id = table.id
);

Có lẽ một cách dễ dàng hơn là chỉ định nhiều bảng sau mệnh đề UPDATE. Chỉ biểu thức

UPDATE table
SET col = new_value
WHERE col = old_value;
4 sẽ thực hiện cập nhật nhưng việc liệt kê các bảng bổ sung sẽ cho phép bao gồm các bảng

________số 8_______

Tương tự như việc mở rộng mệnh đề WHERE, số lượng bảng có thể được mở rộng để bao gồm tất cả các bảng bạn cần nếu bạn có nhiều bảng cần được nối vào

Tôi có thể sử dụng if other trong truy vấn MySQL không?

Câu lệnh IF-THEN-ELSE của MySQL . you can use IF-THEN-ELSE .

Bạn có thể viết truy vấn cập nhật với điều kiện WHERE không?

Truy vấn CẬP NHẬT SQL được sử dụng để sửa đổi các bản ghi hiện có trong một bảng. Bạn có thể sử dụng mệnh đề WHERE với truy vấn CẬP NHẬT để cập nhật các hàng đã chọn , nếu không thì tất cả các hàng sẽ bị ảnh hưởng.

Làm cách nào để sử dụng truy vấn cập nhật trong MySQL?

Điều này sẽ sửa đổi bất kỳ giá trị trường nào của bất kỳ bảng MySQL nào. .
cú pháp. Khối mã sau đây có cú pháp SQL chung của lệnh CẬP NHẬT để sửa đổi dữ liệu trong bảng MySQL − CẬP NHẬT tên_bảng SET trường1 = giá trị mới1, trường2 = giá trị mới2 [Điều khoản WHERE].
Thí dụ. .
cú pháp. .
Thí dụ

Làm cách nào để cập nhật các giá trị trong cột cụ thể trong SQL với điều kiện?

Lệnh UPDATE trong SQL được sử dụng để sửa đổi hoặc thay đổi các bản ghi hiện có trong một bảng. Nếu chúng tôi muốn cập nhật một giá trị cụ thể, chúng tôi sử dụng mệnh đề WHERE cùng với mệnh đề CẬP NHẬT . Nếu bạn không sử dụng mệnh đề WHERE, tất cả các hàng sẽ bị ảnh hưởng.