2013-03-27 80 views
0

我是新來自sql server的postgres。我寫了一個getSkill函數,它接受一個整數並從「技能」表中返回一個「技能」類型。現在我想從「Jobs」表中提供整型的「SkillIDs」。如果我這樣做,那麼postres說有一個語法錯誤,並在^ getSkill中插入一點點。簡單的postgres語法問題

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語句,語法錯誤似乎消失了。

有人可以解釋一下嗎?

回答

1

我覺得應該是

select getSkill(SkillID) from Jobs where JobID="posID"