(CASE WHEN P.Payer ='113001'
THEN SELECT SUM(NVL(AcceptPrice,0)) FROM IBS_T_BID_SURROGATE AGT WHERE AGT.PROJECT_ID = P.PROJID
ELSE
SELECT SUM(NVL(BC.ReceiveChargePrice,0)) FROM IBS_T_BID_BIDCHARGE BC
WHERE BC.PROJID = P.PROJID
END
) AS SER_AMOUNT,
上面是查询语句中的一段 但是有问题 报错缺少表达式 then后面可不可以是一个查询语句呢?
THEN SELECT SUM(NVL(AcceptPrice,0)) FROM IBS_T_BID_SURROGATE AGT WHERE AGT.PROJECT_ID = P.PROJID
ELSE
SELECT SUM(NVL(BC.ReceiveChargePrice,0)) FROM IBS_T_BID_BIDCHARGE BC
WHERE BC.PROJID = P.PROJID
END
) AS SER_AMOUNT,
上面是查询语句中的一段 但是有问题 报错缺少表达式 then后面可不可以是一个查询语句呢?
THEN (SELECT SUM(isnull(AcceptPrice,0)) FROM IBS_T_BID_SURROGATE AGT WHERE AGT.PROJECT_ID = P.PROJID)
ELSE
(SELECT SUM(isnull(BC.ReceiveChargePrice,0)) FROM IBS_T_BID_BIDCHARGE BC
WHERE BC.PROJID = P.PROJID)
END
) AS SER_AMOUNT,
(CASE WHEN P.Payer ='113001'
THEN (SELECT SUM(NVL(AcceptPrice,0)) FROM IBS_T_BID_SURROGATE AGT WHERE AGT.PROJECT_ID = P.PROJID)
ELSE
(SELECT SUM(NVL(BC.ReceiveChargePrice,0)) FROM IBS_T_BID_BIDCHARGE BC
WHERE BC.PROJID = P.PROJID)
END
) AS SER_AMOUNT
THEN (SELECT SUM(isnull(AcceptPrice,0)) FROM IBS_T_BID_SURROGATE AGT WHERE AGT.PROJECT_ID = P.PROJID
ELSE
(SELECT SUM(isnull(BC.ReceiveChargePrice,0)) FROM IBS_T_BID_BIDCHARGE BC
WHERE BC.PROJID = P.PROJID
END
) AS SER_AMOUNT,
不過要用括號括起來
(CASE WHEN P.Payer ='113001'
THEN (SELECT SUM(NVL(AcceptPrice,0)) FROM IBS_T_BID_SURROGATE AGT WHERE AGT.PROJECT_ID = P.PROJID)
ELSE
(SELECT SUM(NVL(BC.ReceiveChargePrice,0)) FROM IBS_T_BID_BIDCHARGE BC
WHERE BC.PROJID = P.PROJID)
END
) AS SER_AMOUNT,
上面是查询语句中的一段 但是有问题 报错缺少表达式 then后面可不可以是一个查询语句呢?
(CASE WHEN P.Payer ='113001'
THEN (SELECT SUM(isnull(AcceptPrice,0)) FROM IBS_T_BID_SURROGATE AGT WHERE AGT.PROJECT_ID = P.PROJID)
ELSE
(SELECT SUM(isnull(BC.ReceiveChargePrice,0)) FROM IBS_T_BID_BIDCHARGE BC
WHERE BC.PROJID = P.PROJID)
END
) AS SER_AMOUNT,