Bagaimana cara menulis pernyataan IF ELSE di kueri MySQL?
Sesuatu seperti ini:
mysql_query("...(irrelevant code).. IF(action==2&&state==0){state=1}");
Kemudian di dalam array saya, saya harus bisa melakukan ini:
$row['state']
//this should equal 1, the query should not change anything in the database,
//just the variable for returning the information
mysql
if-statement
Dylan Cross
sumber
sumber
N.id
dan(CASE WHEN ...
AS N.state
keAS state
.=
sebagai pengganti==
untuk perbandingan?Anda harus menuliskannya dalam SQL, bukan gaya C / PHP
untuk digunakan dalam kueri
IF ( action = 2 AND state = 0 ) THEN SET state = 1
untuk digunakan dalam prosedur atau fungsi tersimpan
sumber
Anda sedang mencari
case
:case when action = 2 and state = 0 then 1 else 0 end as state
MySQL memiliki
if
sintaks (if(action=2 and state=0, 1, 0)
), tetapicase
lebih universal.Perhatikan bahwa
as state
ada hanya kolom aliasing. Saya berasumsi ini ada di daftar kolom kueri SQL Anda.sumber
SELECT col1, col2, IF( action = 2 AND state = 0, 1, 0 ) AS state from tbl1;
ATAU
SELECT col1, col2, (case when (action = 2 and state = 0) then 1 else 0 end) as state from tbl1;
kedua hasil akan sama ....
sumber
menurut manual referensi mySQL ini sintaks menggunakan pernyataan if dan else:
Jadi tentang pertanyaan Anda:
atau Anda bisa menggunakan
IF ((action=2)&&(state=0)) then state = 1; ELSE state = 2; END IF;
Ada contoh bagus di tautan ini: http://easysolutionweb.com/sql-pl-sql/how-to-use-if-and-else-in-mysql/
sumber