1
我想知道系統將使用哪種情況,假設滿足多個條件。mysql case滿足多個條件
CASE
WHEN id IN($cID) THEN `count`+1
WHEN id IN($prev_catID) THEN `count`-1
END
它會是第一個還是最後一個?
在其他編程中,每個條件都會添加一個BREAK來終止進程。 BREAK會在mysql中執行嗎?
我想知道系統將使用哪種情況,假設滿足多個條件。mysql case滿足多個條件
CASE
WHEN id IN($cID) THEN `count`+1
WHEN id IN($prev_catID) THEN `count`-1
END
它會是第一個還是最後一個?
在其他編程中,每個條件都會添加一個BREAK來終止進程。 BREAK會在mysql中執行嗎?
case
語句按順序進行評估。第一個匹配的語句是返回的語句。
這在documentation相當清楚的描述:
對於第二語法,每個WHEN子句search_condition表達 評估,直到有一個爲真,在該點其對應THEN子句 執行STATEMENT_LIST。如果沒有search_condition相等,則執行 ELSE子句statement_list(如果有)。