我希望根據表中輸入的一個數字來添加和減去數字。UPDATE leftjoin SET +/-問題
這裏是我的代碼:
$uratio = "
UPDATE teams
LEFT JOIN games g1 ON (teams.ID = g1.op1ID)
SET ratio = ratio
+ IF(g1.op1gamescore = 1 , g1.op1score, g1.op1score)
, ratio = ratio
- IF(g1.op1gamescore = 0, g1.op1score, g1.op1score)
WHERE g1.ID = '$_POST[id]' ;
";
mysql_query($uratio) or die (mysql_error());
$uratiob = "
UPDATE teams
LEFT JOIN games g2 ON (teams.ID = g2.op2ID)
SET ratio = ratio
+ IF(g2.op2gamescore = 1, g2.op2score, g2.op2score)
, ratio = ratio
- IF(g2.op2gamescore = 0, g2.op2score, g2.op2score)
WHERE g2.ID = '$_POST[id]' ;
";
mysql_query($uratiob) or die (mysql_error());
當op2gamescore = 1它把OP1與(負號)和OP2與(負號)OP2是好的,但不OP1。
當op1gamescore = 1時,它會執行相同操作。
它確實在op1或op2 = 0時進行數學運算。但不是當它equlas 1.
它做了正確的數學,但OP1總是以負號結束,爲什麼呢?它就像它執行 - IF和NOT + IF ...任何想法?
你不明白怎麼IF的作品。它有3個參數,第一個是條件,第二個是條件爲真時返回的值,第三個是條件爲假時返回的值。無論條件是真還是假,都會返回相同的值,因此基本上只是添加分數並將其減去,無論條件如何。 –
好thnx,生病再次檢查 – GaboPlat
非常感謝。它現在可以運行。 – GaboPlat