"[图片] [图片] 要做一个按年查询的条件,库里的时间是 varchar,参数类型设置的字符串组, 现在的问题是预览的时候数据直接出来,加上条件查询后就没数据了,请问各位这是什么原因,要怎么解 .."
要做一个按年查询的条件,库里的时间是 varchar,参数类型设置的字符串组,现在的问题是预览的时候数据直接出来,加上条件查询后就没数据了,请问各位这是什么原因,要怎么解决呢
这是库里的数据
一: 你 where 条件里用的 =? ,为啥参数要设置成字符串组?设成字符串就行。二: 你的 orrcur_tms 在数据库中的数据是什么?然后传过来的参数值又是什么? 建议先写个固定值,先在数据库里执行通过,然后在数据集里将这个固定值再改成参数形式
还有,看你写的是按年查询,那 occur_tms 字段的值是年还是日期时间?如果是日期时间,用数据库函数取它的年,然后在和参数比较
库里用 DATE_FORMAT(occur_tms,‘%Y’) 这种,我在数据集里试了,加上这个报语法错误
报表数据集执行时通过 jdbc 执行,一般 sql 语句都能支持,如果不行,看看是否有其他函数,比如 to_char, 或者字符串截取
看看数据库里的字符串截取函数,直接取左四位就行
一: 你 where 条件里用的 =? ,为啥参数要设置成字符串组?设成字符串就行。
二: 你的 orrcur_tms 在数据库中的数据是什么?然后传过来的参数值又是什么? 建议先写个固定值,先在数据库里执行通过,然后在数据集里将这个固定值再改成参数形式
还有,看你写的是按年查询,那 occur_tms 字段的值是年还是日期时间?如果是日期时间,用数据库函数取它的年,然后在和参数比较
库里用 DATE_FORMAT(occur_tms,‘%Y’) 这种,我在数据集里试了,加上这个报语法错误
报表数据集执行时通过 jdbc 执行,一般 sql 语句都能支持,如果不行,看看是否有其他函数,比如 to_char, 或者字符串截取
看看数据库里的字符串截取函数,直接取左四位就行