DB2 decfloat错误

问题描述 投票:0回答:2

我在查询中收到以下错误:

在函数“DECFLOAT”的字符串参数中找到无效字符。

但是我没有对我选择的任何字段进行任何更改:

select
RQH.COMPANY, 
RQH.LAST_APRV_DT, 
RQH.CREATION_DATE, 
RQH.RELEASED_DATE, 
RQH.REL_OPER_ID, 
RQH.REQ_NUMBER, 
RQH.REQUESTER, 

RLN.COMPANY, 
RLN.BUYER,
RLN.DESCRIPTION, 
RLN.TRAN_UNIT_COST, 
RLN.QUANTITY, 
RLN.ITEM, 
RLN.VEN_ITEM, 
RLN.LINE_NBR, 
RLN.MANUF_CODE, 
RLN.MANUF_NBR, 
RLN.VENDOR, 
RLN.REQ_NUMBER, 
RLN.ENTERED_UOM, 


MMD.LINE_NBR, 
MMD.DOC_NBR_NUM, 

VEN.VENDOR_VNAME, 
VEN.VENDOR_GROUP, 
VEN.VENDOR

from mmd 

join rln on MMD.COMPANY = rln.COMPANY and MMD.DOC_NBR_NUM = rln.REQ_NUMBER 
    and MMD.LINE_NBR = rln.LINE_NBR

join cpy on rln.company = cpy.company

join ven on VEN.VENDOR_GROUP = cpy.VENDOR_GROUP and VEN.VENDOR = rln.VENDOR

join rqh on RLN.COMPANY = RQH.COMPANY and RLN.REQ_NUMBER = RQH.REQ_NUMBER

where ven.vendor = 20200
sql db2 rapidsql
2个回答
0
投票

其中一个比较的一侧是数字数据类型,另一侧是字符数据类型。该对中字符列中的一个值无法转换为数字。 Db2 data type conversion rules声明如果一个操作数是数字而另一个是字符类型,则字符值将被隐式强制转换为数字。对于无法强制的值,这显然会失败。如果这是一个有效值,则需要将numeric列显式地转换为字符数据类型(根据需要用空格填充它)。


0
投票

如果你完全删除“WHERE”条款,你仍然会收到错误或者它会消失吗?

© www.soinside.com 2019 - 2024. All rights reserved.