注册

mysql迁移到DM7,使用union报错无法比较的数据

Wh.Yi 2021/12/24 959 1

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:dm7
【操作系统】:windows 10
【CPU】: R7-5800h
【问题描述】*:使用迁移工具从MySQL迁移视图到DM7失败,已经将创建视图语句删除,单独拎出来查询部分
在mysql测试结果正常,在dm7管理工具测试,报错:无法比较的数据类型,
分开测试结果正常,但是一起运行就就报错,猜测是Union原因,但是没有头绪,请大佬指点指点

CREATE VIEW “PROCUREMENT”.“V_PROJECT_BJ_INFO” AS
SELECT
“D”.“USE_STATUS” AS “USESTATUS”,
“D”.“DEMAND_ORG_ID” AS “DEMANDORGID”,
“D”.“DEMAND_ORG_NAME” AS “DEMANDORGNAME”,
“D”.“AGENT_ORG_ID” AS “AGENTORGID”,
“D”.“AGENT_ORG_NAME” AS “AGENTORGNAME”,
“D”.“PROJECT_TYPE” AS “PROJECTTYPE”,
“D”.“PROJECT_NO” AS “PROJECTNO”,
“B”.“SUPPLIER_NAME” AS “SUPPLIERNAME”,
“B”.“COAL_AREA” AS “COALAREA”,
“B”.“DEPARTURE” AS “DEPARTURE”,
“B”.“DESTINATION” AS “DESTINATION”,
NULL AS “SECCOALAREA”,
NULL AS “SECDEPARTURE”,
NULL AS “SECDESTINATION”,
“B”.“SUPPLY_WEIGHT” AS “FIRSTSUPPLYWEIGHT”,
“B”.“CAL_PRICE” AS “FIRSTCALPRICE”,
“B”.“TON_PRICE” AS “FIRSTTONPRICE”,
NULL AS “SECSUPPLYWEIGHT”,
NULL AS “SECSUPPLYCALPRICE”,
NULL AS “SECSUPPLYTONPRICE”,
“B”.“SORT” AS “SORT”,(
CASE
“B”.“WIN_STATUS”
WHEN ‘01’ THEN
“B”.“RESULT_WEIGHT” ELSE NULL
END
) AS “RESULTWEIGHT”,(
CASE
“B”.“WIN_STATUS”
WHEN ‘01’ THEN
“B”.“CAL_PRICE” ELSE NULL
END
) AS “CALPRICE”,(
CASE
“B”.“WIN_STATUS”
WHEN ‘01’ THEN
“B”.“TON_PRICE” ELSE NULL
END
) AS “TONPRICE”,
“B”.“WIN_STATUS_TIME” AS “CREATETIME”,
“B”.“REMARK” AS “REMARK”,
“C”.“DDZX_STATUS” AS “DDZXSTATUS”,
“C”.“CANCEL_REASON_NAME” AS “CANCELREASON”,
“B”.“CAPTION” AS “CANCELREASONNAME”
FROM
(((
“PROCUREMENT”.“T_B_PROCUREMENT_PROJECT_FUEL_BID” “D”
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_PROJECT_RULE_FUEL_BID” “F” ON ((
“D”.“ID” = “F”.“PROJECT_ID”
)))
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_WINNING_RESULT_FUEL_BID” “B” ON ((
“D”.“ID” = “B”.“PROJECT_ID”
)))
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_CONTRACT_BASE” “C” ON ((
“C”.“WINNING_RESULT_BID_ID” = “B”.“ID”)))
WHERE
((
“F”.“BID_TYPE” = ‘00’
)
AND ( “D”.“USE_STATUS” > ‘04’ )
AND ( “D”.“USE_STATUS” < ‘12’ ))
UNION
SELECT
“D”.“USE_STATUS” AS “USESTATUS”,
“D”.“DEMAND_ORG_ID” AS “DEMANDORGID”,
“D”.“DEMAND_ORG_NAME” AS “DEMANDORGNAME”,
“D”.“AGENT_ORG_ID” AS “AGENTORGID”,
“D”.“AGENT_ORG_NAME” AS “AGENTORGNAME”,
“D”.“PROJECT_TYPE” AS “PROJECTTYPE”,
“D”.“PROJECT_NO” AS “PROJECTNO”,
“A”.“SUPPLIER_NAME” AS “SUPPLIERNAME”,
“A”.“COAL_AREA” AS “COALAREA”,
“A”.“DEPARTURE” AS “DEPARTURE”,
“A”.“DESTINATION” AS “DESTINATION”,
“B”.“COAL_AREA” AS “SECCOALAREA”,
“B”.“DEPARTURE” AS “SECDEPARTURE”,
“B”.“DESTINATION” AS “SECDESTINATION”,
“A”.“SUPPLY_WEIGHT” AS “FIRSTSUPPLYWEIGHT”,
“A”.“CAL_PRICE” AS “FIRSTCALPRICE”,
“A”.“TON_PRICE” AS “FIRSTTONPRICE”,
“B”.“SUPPLY_WEIGHT” AS “SECSUPPLYWEIGHT”,
“B”.“CAL_PRICE” AS “SECSUPPLYCALPRICE”,
“B”.“TON_PRICE” AS “SECSUPPLYTONPRICE”,
“B”.“SORT” AS “SORT”,(
CASE
“B”.“WIN_STATUS”
WHEN ‘01’ THEN
“B”.“RESULT_WEIGHT” ELSE NULL
END) AS “RESULTWEIGHT”,(
CASE
“B”.“WIN_STATUS”
WHEN ‘01’ THEN
“B”.“CAL_PRICE” ELSE NULL
END) AS “CALPRICE”,(
CASE
“B”.“WIN_STATUS”
WHEN ‘01’ THEN
“B”.“TON_PRICE” ELSE NULL
END) AS “TONPRICE”,
“B”.“WIN_STATUS_TIME” AS “CREATETIME”,
“B”.“REMARK” AS “REMARK”,
“C”.“DDZX_STATUS” AS “DDZXSTATUS”,
“C”.“CANCEL_REASON_NAME” AS “CANCELREASON”,
“B”.“CAPTION” AS “CANCELREASONNAME”
FROM
((((“PROCUREMENT”.“T_B_PROCUREMENT_PROJECT_FUEL_BID” “D”
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_PROJECT_RULE_FUEL_BID” “F” ON ((
“D”.“ID” = “F”.“PROJECT_ID”)))
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_OFFICE_RESULT_FUEL” “A” ON ((
“D”.“ID” = “A”.“PROJECT_ID”)))
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_WINNING_RESULT_FUEL_BID” “B” ON (((
“D”.“ID” = “B”.“PROJECT_ID”)
AND ( “B”.“SUPPLIER_ID” = “A”.“SUPPLIER_ID” ))))
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_CONTRACT_BASE” “C” ON ((
“C”.“WINNING_RESULT_BID_ID” = “B”.“ID”)))
WHERE
((
“F”.“BID_TYPE” = ‘01’
)
AND ( “D”.“USE_STATUS” > ‘04’ )
AND ( “D”.“USE_STATUS” < ‘12’ )) UNION
SELECT
“D”.“USE_STATUS” AS “USESTATUS”,
“D”.“DEMAND_ORG_ID” AS “DEMANDORGID”,
“D”.“DEMAND_ORG_NAME” AS “DEMANDORGNAME”,
“D”.“AGENT_ORG_ID” AS “AGENTORGID”,
“D”.“AGENT_ORG_NAME” AS “AGENTORGNAME”,
“D”.“PROJECT_TYPE” AS “PROJECTTYPE”,
“D”.“PROJECT_NO” AS “PROJECTNO”,
“B”.“SUPPLIER_NAME” AS “SUPPLIERNAME”,
“B”.“COAL_AREA” AS “COALAREA”,
“B”.“DEPARTURE” AS “DEPARTURE”,
“B”.“DESTINATION” AS “DESTINATION”,
NULL AS “SECCOALAREA”,
NULL AS “SECDEPARTURE”,
NULL AS “SECDESTINATION”,
“B”.“SUPPLY_WEIGHT” AS “FIRSTSUPPLYWEIGHT”,
“B”.“CAL_PRICE” AS “FIRSTCALPRICE”,
“B”.“TON_PRICE” AS “FIRSTTONPRICE”,
NULL AS “SECSUPPLYWEIGHT”,
NULL AS “SECSUPPLYCALPRICE”,
NULL AS “SECSUPPLYTONPRICE”,
“B”.“SORT” AS “SORT”,(
CASE
“B”.“WIN_STATUS”
WHEN ‘01’ THEN
“B”.“RESULT_WEIGHT” ELSE NULL
END
) AS “RESULTWEIGHT”,(
CASE
“B”.“WIN_STATUS”
WHEN ‘01’ THEN
“B”.“CAL_PRICE” ELSE NULL
END
) AS “CALPRICE”,(
CASE
“B”.“WIN_STATUS”
WHEN ‘01’ THEN
“B”.“TON_PRICE” ELSE NULL
END
) AS “TONPRICE”,
“B”.“WIN_STATUS_TIME” AS “CREATETIME”,
“B”.“REMARK” AS “REMARK”,
“C”.“DDZX_STATUS” AS “DDZXSTATUS”,
“C”.“CANCEL_REASON_NAME” AS “CANCELREASON”,
“B”.“CAPTION” AS “CANCELREASONNAME”
FROM
(((
“PROCUREMENT”.“T_B_PROCUREMENT_PROJECT_IMPORT_BID” “D”
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_PROJECT_RULE_IMPORT_BID” “F” ON ((
“D”.“ID” = “F”.“PROJECT_ID”
)))
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_WINNING_RESULT_FUEL_BID” “B” ON ((
“D”.“ID” = “B”.“PROJECT_ID”
)))
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_CONTRACT_BASE” “C” ON ((
“C”.“WINNING_RESULT_BID_ID” = “B”.“ID”)))
WHERE
((“F”.“BID_TYPE” = ‘00’)
AND ( “D”.“USE_STATUS” > ‘04’ )
AND ( “D”.“USE_STATUS” < ‘12’ )) UNION
SELECT
“D”.“USE_STATUS” AS “USESTATUS”,
“D”.“DEMAND_ORG_ID” AS “DEMANDORGID”,
“D”.“DEMAND_ORG_NAME” AS “DEMANDORGNAME”,
“D”.“AGENT_ORG_ID” AS “AGENTORGID”,
“D”.“AGENT_ORG_NAME” AS “AGENTORGNAME”,
“D”.“PROJECT_TYPE” AS “PROJECTTYPE”,
“D”.“PROJECT_NO” AS “PROJECTNO”,
“A”.“SUPPLIER_NAME” AS “SUPPLIERNAME”,
“A”.“COAL_AREA” AS “COALAREA”,
“A”.“DEPARTURE” AS “DEPARTURE”,
“A”.“DESTINATION” AS “DESTINATION”,
“B”.“COAL_AREA” AS “SECCOALAREA”,
“B”.“DEPARTURE” AS “SECDEPARTURE”,
“B”.“DESTINATION” AS “SECDESTINATION”,
“A”.“SUPPLY_WEIGHT” AS “FIRSTSUPPLYWEIGHT”,
“A”.“CAL_PRICE” AS “FIRSTCALPRICE”,
“A”.“TON_PRICE” AS “FIRSTTONPRICE”,
“B”.“SUPPLY_WEIGHT” AS “SECSUPPLYWEIGHT”,
“B”.“CAL_PRICE” AS “SECSUPPLYCALPRICE”,
“B”.“TON_PRICE” AS “SECSUPPLYTONPRICE”,
“B”.“SORT” AS “SORT”,(
CASE
“B”.“WIN_STATUS”
WHEN ‘01’ THEN
“B”.“RESULT_WEIGHT” ELSE NULL
END) AS “RESULTWEIGHT”,(
CASE
“B”.“WIN_STATUS”
WHEN ‘01’ THEN
“B”.“CAL_PRICE” ELSE NULL
END) AS “CALPRICE”,(
CASE
“B”.“WIN_STATUS”
WHEN ‘01’ THEN
“B”.“TON_PRICE” ELSE NULL
END) AS “TONPRICE”,
“B”.“WIN_STATUS_TIME” AS “CREATETIME”,
“B”.“REMARK” AS “REMARK”,
“C”.“DDZX_STATUS” AS “DDZXSTATUS”,
“C”.“CANCEL_REASON_NAME” AS “CANCELREASON”,
“B”.“CAPTION” AS “CANCELREASONNAME”
FROM
((((“PROCUREMENT”.“T_B_PROCUREMENT_PROJECT_IMPORT_BID” “D”
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_PROJECT_RULE_IMPORT_BID” “F” ON ((
“D”.“ID” = “F”.“PROJECT_ID”)))
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_OFFICE_RESULT_FUEL” “A” ON ((
“D”.“ID” = “A”.“PROJECT_ID” )))
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_WINNING_RESULT_FUEL_BID” “B” ON (((
“D”.“ID” = “B”.“PROJECT_ID” )
AND ( “B”.“SUPPLIER_ID” = “A”.“SUPPLIER_ID” ))))
LEFT JOIN “PROCUREMENT”.“T_B_PROCUREMENT_CONTRACT_BASE” “C” ON ((“C”.“WINNING_RESULT_BID_ID” = “B”.“ID”)))
WHERE
((“F”.“BID_TYPE” = ‘01’)
AND ( “D”.“USE_STATUS” > ‘04’ )
AND ( “D”.“USE_STATUS” < ‘12’ ));

回答 0
暂无回答
扫一扫
联系客服