execute immediate 'create table customise1 as SELECT 关口点全名,电能量类型,数据 FROM 表底 WHERE datetime BETWEEN to_date('''||datefrom||''',''yyyy/mm/dd'') AND to_date('''||dateto||''',''yyyy/mm/dd'') and (电能量类型=''正向有功'' or 电能量类型=''反向有功'') GROUP BY 关口点全名,电能量类型,数据 HAVING COUNT(关口点全名)=trunc((To_date('''||dateto||''' , ''yyyy/mm/dd hh24-mi-ss'') - To_date('''||datefrom||''' , ''yyyy/mm/dd hh24-mi-ss'')+2))';
execute immediate 'create table customise1 as SELECT 关口点全名,电能量类型,数据 FROM 表底 WHERE datetime BETWEEN to_date('''||datefrom||''',''yyyy/mm/dd'') AND to_date('''||dateto||''',''yyyy/mm/dd'') and (电能量类型=''正向有功'' or 电能量类型=''反向有功'') GROUP BY 关口点全名,电能量类型,数据 HAVING COUNT(关口点全名)=trunc((To_date('''||dateto||''' , ''yyyy/mm/dd hh24-mi-ss'') - To_date('''||datefrom||''' , ''yyyy/mm/dd hh24-mi-ss'')+2))';
楼主啊,两个字符串怎么连接啊? 不是用||去连接吗
比如 “ab”||"cd"的结果就是“abcd”
但是你这个sql本身就用单引号引起来了 然后单引号内部 两个单引号被当成一个单引号去解析 所以你的datatime就被当成字符串 而不是变量了 这根java代码中的变量一个用法 java中的变量你要和字符串连接起来,不也得用+连接吗?