在EsgynDB中,查询时提示:*** ERROR[2006] Internal error: assertion failure (result_type) in file ../generator/GenPreCode.cpp at line 10305.
SQL>SELECT pro.fid,pro.fcode,pro.fname FROM t_pa_product pro inner join t_pa_pro_extend ext on pro.fid = ext.fproduct_id WHERE pro.FDELETED= 0 and ext.fdeleted = 0 and ext.fchecked = 1 and pro.FPARENT_ID IS NULL and pro.FPRODUCT_TYPE in (SELECT ptype.fid FROM T_PA_PRO_TYPE ptype WHERE ptype.FCODE in ('MOMTYPE','GQTZJJ_MOM') OR fincode = 'MOMXJJ' AND ptype.FDELETED = 0 AND ptype.fchecked =1);
*** ERROR[2006] Internal error: assertion failure (result_type) in file ../generator/GenPreCode.cpp at line 10305. [2021-01-06 17:43:44]
查询语句中<...pro.FPRODUCT_TYPE in (SELECT ptype.fid...> FPRODUCT_TYPE是字符类型, fid是数据类型,数据类型不匹配造成的
方法一、使用类型装换,将两个数据类型匹配
...pro.FPRODUCT_TYPE in (SELECT to_char(ptype.fid)...
方法二、对查询语句相关表做统计更新;
SQL>update statistics for table T_PA_PRO_TYPE on every column sample;
--- SQL operation complete.
SQL>update statistics for table t_pa_pro_extend on every column sample;
--- SQL operation complete.
SQL>update statistics for table t_pa_product on every column sample;
--- SQL operation complete.
SQL>SELECT pro.fid,pro.fcode,pro.fname FROM t_pa_product pro inner join t_pa_pro_extend ext on pro.fid = ext.fproduct_id WHERE pro.FDELETED= 0 and ext.fdeleted = 0 and ext.fchecked = 1 and pro.FPARENT_ID IS NULL and pro.FPRODUCT_TYPE in (SELECT ptype.fid FROM T_PA_PRO_TYPE ptype WHERE ptype.FCODE in ('MOMTYPE','GQTZJJ_MOM') OR fincode = 'MOMXJJ' AND ptype.FDELETED = 0 AND ptype.fchecked =1);
--- 0 row(s) selected.
SQL>
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69985104/viewspace-2748062/ ,如需转载,请注明出处,否则将追究法律责任。