This is a translated page. The original can be found here: http://iwebdevel.com/2010/02/03/sqlite-mysql-php-ternary-operator-if-statement-in-mysql-and-sqlite/
UPDATES VIA RSS | Email CẬP NHẬT VIA RSS | Email Get updates via feedburner Get updates via twitter
Home / Coding / MySQL / PHP / SQLite / SQLite, MySQL, PHP: Ternary … Trang chủ / Coding / MySQL / PHP / SQLite / SQLite, MySQL, PHP: ternary ...

SQLite, MySQL, PHP: Ternary operator (IF() statement) in MySQL and SQLite SQLite, MySQL, PHP: ternary nhà điều hành (IF () statement) trong MySQL và SQLite

Posted on 03. Được đăng trên 03. Feb, 2010 by Dragos in Coding , MySQL , PHP , SQLite Tháng Hai, 2010 bởi Dragos tại Coding, MySQL, PHP, SQLite

While working on a proxy checker tool for one of my projects, I was struggling on how to execute a conditional query on my SQLite database to update a column only if its value is greater than 0 (it would be pointless in my case to let the script update the column with negative values). Trong khi làm việc trên một công cụ kiểm tra proxy cho một trong những dự án của tôi, tôi đã gặp khó khăn về cách thực hiện một truy vấn có điều kiện về cơ sở dữ liệu SQLite của tôi để cập nhật một cột chỉ khi giá trị của nó lớn hơn 0 (nó sẽ là vô nghĩa trong trường hợp của tôi để cho các kịch bản cập nhật các cột với các giá trị âm).

In Mysql one would do like this (we use the ternary operator IF(to_check_expression>0,expression1,expression2) ): Trong Mysql một sẽ làm như thế này (chúng tôi sử dụng các nhà điều hành ternary IF (to_check_expression> 0, expression1, expression2)):

update table_name set column_name=IF((column_name-1)>0,(column_name-1),0)

However, in SQLite this method will not work. Tuy nhiên, trong phương pháp SQLite này sẽ không hoạt động. Instead I had to use the case when (condition) then expression1 else expression2 end method. Thay vào đó tôi đã phải sử dụng các trường hợp khi (điều kiện) sau đó expression1 khác expression2 phương pháp kết thúc.

The above query in MySQL can be rewritten like this in SQLite: Các truy vấn trên trong MySQL có thể được viết lại như thế này trong SQLite:

update table_name set column_name=case when (column_name-1)>0 then (column_name-1) else 0 end

That's it. Vậy đó. I hope it helps someone! Tôi hy vọng nó sẽ giúp ai đó!

Translate this post Dịch bài đăng này


Related posts: Liên quan đến bài viết:

  1. Wordpress: Easily Reset Your Account Password Using MySQL and PHP Wordpress: Dễ dàng Đặt lại mật khẩu tài khoản của bạn Sử dụng MySQL và PHP
  2. PHP Error: Call to a member function fetch_assoc() on a non-object in PHP Error: Gọi đến một thành viên năng fetch_assoc () trên một phi vật thể tại
  3. PHP: Script to extract one's contacts from email (Gmail, Yahoo,Hotmail,AOL…) and send invites – OpenInviter to go! PHP: Script để trích xuất địa chỉ liên lạc của một từ email (Gmail, Yahoo, Hotmail, AOL ...) và gửi lời mời - OpenInviter để đi!

    blog comments powered by Disqus blog ý kiến được hỗ trợ bởi are On