帆软sql语句疑问

SELECT *

  FROM 表1

  where 1=1

${if(len(outdate) == 0,"","and F_OutDate like '" + outdate%  +"'")}

${if(len(customername) == 0,"","and F_CustomerName = '" + customername + "'")}

显示有语法错误 这种语句模糊查询咋写

FineReport jiujiu一下 发布于 2022-6-6 10:51
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
CD20160914Lv8专家互助
发布于2022-6-6 11:06(编辑于 2022-6-6 13:31)

你是什么数据库?

sql server 数据库:

SELECT *

  FROM 表1

  where 1=1

${if(len(outdate) == 0,"","and CONVERT ( VARCHAR ( 10 ), F_OutDate, 120 ) like '" + outdate  +"%'")}

${if(len(customername) == 0,"","and F_CustomerName = '" + customername + "'")}

-----------oracel数据库------------------

SELECT *

  FROM 表1

  where 1=1

${if(len(outdate) == 0,"","and to_char(F_OutDate, 'yyyy-mm-dd' ) like '" + outdate  +"%'")}

${if(len(customername) == 0,"","and F_CustomerName = '" + customername + "'")}

-------mysql数据库---------------

SELECT *

  FROM 表1

  where 1=1

${if(len(outdate) == 0,"","and DATE_FORMAT(F_OutDate, '%Y-%m-%d' ) like '" + outdate  +"%'")}

${if(len(customername) == 0,"","and F_CustomerName = '" + customername + "'")}

最佳回答
0
好好生活好好学习Lv7资深互助
发布于2022-6-6 10:52(编辑于 2022-6-6 10:52)

SELECT *

  FROM 表1

  where 1=1

${if(len(outdate) == 0,"","and F_OutDate like '" + outdate  +"%'")}

${if(len(customername) == 0,"","and F_CustomerName = '" + customername + "'")}

image.png

这样写

  • jiujiu一下 jiujiu一下(提问者) 不太行 数据库里的时间为 2022-05-19 00:00:00.000 然后我用你这个语句查询 2022-05 显示数据为0条 但是没有显示语法错误
    2022-06-06 11:01 
  • 好好生活好好学习 好好生活好好学习 回复 jiujiu一下(提问者) 语法是没有问题,你再看看
    2022-06-06 11:02 
最佳回答
0
15922204585Lv6高级互助
发布于2022-6-6 10:52

SELECT *

  FROM 表1

  where 1=1

${if(len(outdate) == 0,"","and F_OutDate like '%" + outdate%  +"%'")}

${if(len(customername) == 0,"","and F_CustomerName = '" + customername + "'")}

  • 4关注人数
  • 332浏览人数
  • 最后回答于:2022-6-6 13:31
    请选择关闭问题的原因
    确定 取消
    返回顶部