Types 如何比较db2中数据类型为integer和char的sql中的两个日期?

Types 如何比较db2中数据类型为integer和char的sql中的两个日期?,types,db2,Types,Db2,我正在比较两个表HDSTD19和HDSTD146 SELECT D146_PREF_DATE,D19_DIARY_DTE FROM HDSTD19,HDSTD146 WHERE D19_CONT_NO='M400252' D19_CONT_NO=D146_CONT_NO WITH UR; 这里我想添加一个条件,在这里我可以放置D146\u PREF\u DATE=D19\u DIARY\u DTE 但D19_DIARY_date具有格式为YYYYDDMM的数据类型integer,D14

我正在比较两个表HDSTD19和HDSTD146

SELECT D146_PREF_DATE,D19_DIARY_DTE FROM 
HDSTD19,HDSTD146 WHERE D19_CONT_NO='M400252' D19_CONT_NO=D146_CONT_NO   
WITH UR;
这里我想添加一个条件,在这里我可以放置D146\u PREF\u DATE=D19\u DIARY\u DTE 但D19_DIARY_date具有格式为YYYYDDMM的数据类型integer,D146_PREF_date具有格式为DD/MM/YYYY的数据类型char

如何添加这个,我使用的是DB2

谢谢

您可以使用解决此问题:

select *
from yourTable
where TIMESTAMP_FORMAT(D146_PREF_DATE, 'DD/MM/YYYY')
  = TIMESTAMP_FORMAT(D19_DIARY_DTE, 'YYYYDDMM')

我正在用java编写查询,并尝试使用JDBC连接后端