我是 sql server 的 postgres 新手。我编写了一个函数 getSkill,它接受一个整数并从“技能”表中返回一个“技能”类型。现在我想从“Jobs”表中输入整数类型的“SkillIDs”。如果我这样做,那么 postres 会说存在语法错误并在 ^getSkill 处添加一个插入符号。
select * from getSkill(select "SkillID" from "Jobs" where "JobID"="posID") //syntax error at ^getSkill
我很确定 () 中的语句是有效的 postgres 语句——但如果我用整数替换它,sytnax 错误就会消失。
select * from getSkill("0") //returns an error saying there is no row at position 0 in the DB, because it is still unfilled2
这让我很困惑。如果我用一个简单的整数替换返回整数的有效 postres 语句,语法错误似乎消失了。
有人可以解释发生了什么吗?