我写了一个查询语句:
SELECT *
FROM (SELECT a.*, ROWNUM rn
FROM (SELECT *
FROM tf_tr_specification
where
speci_no=#TechSpecification.speci_no#
speci_name=#TechSpecification.speci_name#
speci_name=#TechSpecification.speci_name#
( BETWEEN issue_date=TO_DATE(#TechSpecification.issue_date#, 'YYYY-MM-DD')
issue_date=TO_DATE(#TechSpecification.issue_date1#, 'YYYY-MM-DD') )
(BETWEEN revise_date=TO_DATE(#TechSpecification.revise_date#, 'YYYY-MM-DD')
revise_date2=TO_DATE(#TechSpecification.revise_date1# , 'YYYY-MM-DD') )
) a)
WHERE rn BETWEEN (#Pagination.currentPage#-1)*#Pagination.PAGE_SIZE# AND (#Pagination.currentPage#)*#Pagination.PAGE_SIZE#
但是现在如果第一条查询的那个条件不存在的话,后面每一个都会在前面加一个AND,数据库查询语句就会报错,而且where也不知道加在哪里,这个要怎么处理呢?