如何从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