MonetDB(SQL:2003)插入数据后如何无需额外SELECT获取最后插入行?
MonetDB获取最后插入行的替代方案(无需额外SELECT)
哦,这个问题我太熟悉了——MonetDB并不支持SQL Server专属的OUTPUT子句,这就是你触发语法错误的根源。不过别急,它遵循SQL:2003标准,提供了**RETURNING子句**,完美实现插入后直接返回数据的需求,不用再额外执行一次SELECT查询。
你只需要把查询改成下面这样:
INSERT INTO MyTable(name, age) VALUES ('John Doe', 25) RETURNING *;
如果只需要返回特定列(比如主键ID和姓名),也可以精准指定列名:
INSERT INTO MyTable(name, age) VALUES ('John Doe', 25) RETURNING id, name;
执行这条语句后,MonetDB会在完成插入操作的同时,直接返回你指定的插入行数据,完全匹配你的需求。
内容的提问来源于stack exchange,提问作者harrison
相关产品推荐
相关产品推荐

