私は2つのテーブルがあります。この2つのテーブルのカラムでPostgreSQLの大文字小文字を使用して複数のレコードを取得するには?
1) fk_tblUserEmployeeList
2) fk_tblmanageremployeelist
はuserid
であると私はUIからuserid
を取得していますが一般的です。最初のテーブルからuserid
のレコードが必要です。何も存在しない場合、第二のテーブルから同じuserid
のレコードを取得します。..
私はCASE
を使用しようとしていますが、私はエラーを取得:
ERROR: more than one row returned by a subquery used as an expression
は私のクエリです:
select case when (select count(userid)
from fk_tblUserEmployeeList
where userid=1
) > 1
then (select employeeid
from fk_tblUserEmployeeList
where userid=1
)
else (select employeeid
from fk_tblmanageremployeelist
where userid=1
)
end
'>'は実際には '> ='でなければなりません。そうでなければ、一致するレコードが1つだけあればelse条件を使います。 –
@マークが述べたことに加えて、元のクエリは 'LIMIT 1 'なしで全く動作しませんでした。 –