如何插入“COALESCE”?

时间:2013-12-04 03:07:10

标签: postgresql

这是我的错误消息: “错误:COALESCE类型文本和整数无法匹配 LINE 431:和hrot_hrpaycd_id = 6)),0)作为ROT,“

如何插入“COALESCE”?

coalesce(
  select formatQty(round(sum(hrprocinc_amount),2)) 
  from hrprocinc 
  where         
    hrprocinc_hrprocemp_id=v_payslip.hrprocemp_id
    and hrprocinc_hrot_id in (
      select hrot_id from hrot, hrpaycd, hrprocinc, hrprocemp, hremp
      where hrprocinc_hrot_id = hrot_id 
        and hrprocinc_hrpaycd_id = hrpaycd_id
        and hrpaycd_id = hrot_hrpaycd_id 
        and hrprocinc_hrprocemp_id = hrprocemp_id
        and hrprocemp_hremp_id = hremp_id
        and hrot_nd = FALSE
        and hrot_hrpaycd_id = 6
    ),
  0) as ROT

1 个答案:

答案 0 :(得分:1)

我怀疑formatQty()返回一个字符串,你试图用整数来合并它。我想快速,可能非常脏检查将引用整数。

但我倾向于自己删除formatQty()。如果可能的话,将格式保留为应用程序代码。