なぜPostgresから次のエラーが出るのですか?PostgreSQL IF-THEN-ELSE制御構造
syntax error at or near "IF"
私はPostgreSQL: Documentation: 8.3: Control Structuresをお読みください。まず、私は(サブクエリで)困難なクエリを実行しようとしたが、その後、私はこのような単純なものを実行しようとした:
IF 2 <> 0 THEN select * from users; END IF;
エラーがまだ同じです。私は間違って何をしていますか?
ああ、あなたの返事もありがとう。いいえ、私はちょうど "IF"の条件に応じて1つまたは別の "選択"する方法を検索していた。だから、私はこのような単純な方法ではないことが分かった(IF ...(SELECT ...)= 2 THEN SELECT ... ELSE SELECT ... END IF; – Elkan
実際に IF(tから選択)= 2 THEN NULL; END IF; が動作する場合、問題はおそらくコンテキストで何かをSELECTしようとしていて、何も返さないということでしょう。 この場合、パベルは完璧な例を作りました。関数を正しく定義したことを考慮して、 'RETURN QUERY'を使うことができます。 – valgog