为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:dm8
【操作系统】:windows10
【CPU】:
【问题描述】*:使用的mybatisPlus,xml中的sql如下:
WITH tt AS (
SELECT bsi.OBJID, bsi.SCODE, bsi.STYPE, bsi.MKTCODE, bsi.ORGID, bst.ORGID assignOrgid
FROM B_STOCKFOCUS_INFO bsi
JOIN (SELECT bst.*
FROM B_STOCKFOCUS_TRACK_ASSIGN bst
WHERE PERIOD >= 1
AND PERIOD <= 4
) bst
ON bsi.SCODE = bst.SCODE AND bsi.STYPE = bst.STYPE AND bsi.MKTCODE = bst.MKTCODE AND
bsi.START_PERIOD
< bst.PERIOD AND (bsi.END_PERIOD >= bst.PERIOD OR bsi.END_PERIOD is NULL)
WHERE (bsi.START_PERIOD != bsi.END_PERIOD
OR bsi.END_PERIOD is NULL)
AND greatest(bsi.START_PERIOD + 1, 1) <=
least((CASE WHEN bsi.END_PERIOD is NUll THEN 4 ELSE bsi.END_PERIOD END), 4))
SELECT ORGID,
COUNT(DISTINCT OBJID) total,
COUNT(DISTINCT SCODE) stock,
COUNT(DISTINCT assignOrgId) researcher
FROM (SELECT ORGID,
SCODE,
STYPE,
MKTCODE,
assignOrgId,
OBJID
from tt
GROUP BY ORGID,
SCODE,
STYPE,
MKTCODE,
assignOrgId,
OBJID) ttt
GROUP BY ORGID
将sql放在dm管理工具中可以执行成功,
但是在程序中执行,则是报数据类型不匹配。
为了确认是不是接收参数有问题,我将resultType改为了Map,但是还是报相同的错
有大字段类型进行等值比较吗?
您好:

出现此问题原因jdbc版本和数据库服务器数据库版本不一致,数据库服务器下载jdbc驱动,更换驱动,驱动路径:
数据库安装路径/drivers/jdbc