SELECT
ABS(CHECKSUM(NEWID())) % 900000000000000 + 100000000000000 AS 主键Id,
FS.*,
CC.Name AS 联系人姓名,
CC.Telephone AS 联系人电话,
CC.CustomerType AS 客户类型,
'ipcc.org' AS 域名,
'' AS 备注,
CASE
WHEN FS.总得分 >= 85 THEN '优质客户'
WHEN FS.总得分 >= 70 THEN '发展客户'
WHEN FS.总得分 >= 50 THEN '常规客户'
WHEN FS.总得分 >= 30 THEN '关注客户'
ELSE '风险客户'
END AS 客户评级
FROM #FinalScore FS
LEFT JOIN CustomerContacts CC ON FS.客户编号 = CC.CardCode
ORDER BY FS.总得分 DESC;
脏数据条数检查不通过,限制是[0]条,但实际上捕获了[144]条
错误定位:写入[`OrderManage`.`T_Customer`]目的表时遇到了脏数据,数据无法正常写入,请做出检查并修改
异常情况:Data truncation: Data too long for column 'Phone' at row 1
建议排查的目标字段:
{字段序号:1, 目标字段名: Id, 数据类型: bigint }
{字段序号:4, 目标字段名: S4, 数据类型: varchar(50) }
{字段序号:5, 目标字段名: S2, 数据类型: varchar(50) }
{字段序号:6, 目标字段名: S1, 数据类型: varchar(50) }
{字段序号:7, 目标字段名: S3, 数据类型: varchar(50) }
{字段序号:9, 目标字段名: Phone, 数据类型: varchar(15) }
错误记录:
{目标字段名: Id, 字段值: 100000177709967, 字节数: 15, 来源数据类型: DOUBLE, 目标数据类型: bigint}
{目标字段名: S6, 字段值: C000047, 字节数: 7, 来源数据类型: STRING, 目标数据类型: varchar(50)}
{目标字段名: CompanyName, 字段值: 北京科兴生物制品有限公司, 字节数: 12, 来源数据类型: STRING, 目标数据类型: varchar(100)}
{目标字段名: S4, 字段值: 2382110.40, 字节数: 10, 来源数据类型: DOUBLE, 目标数据类型: varchar(50)}
{目标字段名: S2, 字段值: 2414840.000000, 字节数: 14, 来源数据类型: DOUBLE, 目标数据类型: varchar(50)}
{目标字段名: S1, 字段值: 2685690.500000, 字节数: 14, 来源数据类型: DOUBLE, 目标数据类型: varchar(50)}
{目标字段名: S3, 字段值: 10790.000000, 字节数: 12, 来源数据类型: DOUBLE, 目标数据类型: varchar(50)}
{目标字段名: Name, 字段值: 刘青, 字节数: 2, 来源数据类型: STRING, 目标数据类型: varchar(50)}
{目标字段名: Phone, 字段值: 010-82799815-9730, 字节数: 17, 来源数据类型: STRING, 目标数据类型: varchar(15)}
{目标字段名: CustomerTypeCode, 字段值: 703192237850693, 字节数: 15, 来源数据类型: STRING, 目标数据类型: varchar(20)}
{目标字段名: Domain, 字段值: ipcc.org, 字节数: 8, 来源数据类型: STRING, 目标数据类型: varchar(50)}
{目标字段名: Remark, 字段值: , 字节数: 0, 来源数据类型: STRING, 目标数据类型: text}
{目标字段名: S5, 字段值: 优质客户, 字节数: 4, 来源数据类型: STRING, 目标数据类型: varchar(50)}
BASIC INFO
这个代码我在数据推送的时候遇到了上述问题