我正在寻找mysql中一个简单的用户定义函数的东西,它根据是否找到记录返回true或false。我正在努力的是语法 任何可以指引我正确方向的MySQL投注者......
delimiter $$
CREATE DEFINER=`root`@`localhost` FUNCTION `doesItExist`(`id` int) RETURNS bool
BEGIN
declare var_name bool;
IF (EXISTS (select 1 into var_name
from table_name
where id = id;))
return var_name;
END$$
答案 0 :(得分:1)
不确定具有此类功能的重点是什么,这应该有效:
DROP FUNCTION IF EXISTS `IS_RECORD_EXISTS`;
DELIMITER $$
CREATE FUNCTION `IS_RECORD_EXISTS`(`FIELD_VALUE` INT) RETURNS bool
BEGIN
DECLARE flag bool DEFAULT false;
SELECT EXISTS(
SELECT
*
FROM
`City`
WHERE
`id` = FIELD_VALUE) INTO flag;
RETURN flag;
END$$