我试图在 MySQL 中创建一个像这样的函数,但是我在 ifexists 行遇到语法错误:
我认为由于从 MS SQL 服务器进行翻译,我所做的事情略有偏差。
CREATE FUNCTION MyFunction(input_field INTEGER)
RETURNS VARCHAR(5)
BEGIN
IF EXISTS (SELECT * FROM Teaches WHERE courseid = input_field)
RETURN 'True'
RETURN 'false'
END;
**更新
我根据@SK Jajoriya 的答案找到的解决方案
DELIMITER $$
CREATE FUNCTION MyFunction2(input_field INTEGER)
RETURNS VARCHAR(5)
BEGIN
IF EXISTS (SELECT * FROM Teaches WHERE courseid = input_field) THEN
RETURN 'True';
ELSE
RETURN 'False';
END IF;
END $$
最佳答案
CREATE FUNCTION MyFunction(input_field INTEGER)
RETURNS VARCHAR(5)
BEGIN
IF EXISTS (SELECT * FROM Teaches WHERE courseid = input_field) THEN
RETURN 'True'
ELSE
RETURN 'false'
END IF;
END;
在您的情况下,if
语句未关闭
关于mysql - 在mysql中创建一个函数,如果存在的话,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46646604/