【发布时间】:2016-06-23 08:13:51
【问题描述】:
我正在尝试在 pgadmin3 中执行一条 SQL 语句,该语句执行以下操作:
如果已经存在具有特定姓名和年龄的学生,则获取student_id,否则插入具有指定姓名和年龄的新记录,然后获取创建的student_id
我试过这段代码:
IF EXISTS (SELECT 1 FROM main.student WHERE studentname='hhh' and studentage=15)
BEGIN
SELECT student_id FROM main.student WHERE studentname='hhh' and studentage=15
END
ELSE
BEGIN
INSERT INTO main.student(studentname,studentage) VALUES('hhh',15)
END;
END IF;
但我总是收到此错误:
“IF”处或附近的语法错误 SQL 状态:42601 字符:1
你能告诉我我做错了什么吗?另外如何在插入语句之后获取 student_id?
【问题讨论】:
标签: postgresql plpgsql