我在表emp
中有column a
和column b
。我想從這些列中檢索值,並通過函數找出它們之間的差異。該函數將返回true爲0的差異,否則返回false。我不知道如何返回一個值。如何從MySQL中的函數返回布爾值?
另外,如何將檢索到的值存儲在變量中?
我在表emp
中有column a
和column b
。我想從這些列中檢索值,並通過函數找出它們之間的差異。該函數將返回true爲0的差異,否則返回false。我不知道如何返回一個值。如何從MySQL中的函數返回布爾值?
另外,如何將檢索到的值存儲在變量中?
MySQL並沒有真正的布爾值。 TRUE
和FALSE
是別名到1和0,BOOL
列類型只是TINYINT(1)
的別名。出現給布爾結果所有表達式實際上將返回0或1
你可以寫你的查詢爲:
SELECT (a = b) AS a_equals_b
FROM emp
WHERE ...
select a, b, if(a-b=0, true, false) as diff from emp;
整潔。試了這個測驗,並像一個魅力工作:) – 2012-09-09 20:31:48
+1給出了一種方式來結果短語,不知道「if」指令的MySQL – 2013-11-13 12:35:28