一个sql语句要根据另一段sql返回的值来决定是否要添加,怎样判断

if(len(sqlA)>0,sqlB,""),这个判断格式就像上面的,如果sqlA执行后返回的值不为空,就执行sqlB,其中 sqlB中的参数是sqlA的返回值

FineReport wsm123 发布于 2020-5-29 11:50
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
ThorAsgardLv4见习互助
发布于2020-5-29 12:36(编辑于 2020-5-29 12:48)

直接把这两条sql写在一起就可以了, 嵌套sql

image.png

  • wsm123 wsm123(提问者) 那个参数地区如果是一个sql的返回值怎么写呀?
    2020-05-29 14:19 
  • wsm123 wsm123(提问者) AND ( t.FACTORY_CODE in (select a.factory_id from power_factory_base_info a where a.legal_pson_code = (SELECT tp.legal_pson_code FROM power_factory_base_info tp INNER JOIN pers_baseinfo pb ON tp.Factory_Id=pb.true_factory WHERE pb.perscode=\'200001\'))) 这样嵌套是对的吗?
    2020-05-29 14:29 
  • ThorAsgard ThorAsgard 回复 wsm123(提问者) 你这段是一个where子句的一部分? 语法上看是对的, 最外面那一层括号没有必要
    2020-05-29 14:50 
最佳回答
0
L大大Lv7高级互助
发布于2020-5-29 12:43

if(len(sql("数据库名称","sql",1,1))>0,sql("数据库名称","sql",1,1),"")

最佳回答
0
shirokoLv6资深互助
发布于2020-5-29 12:57
LET(A,SQL(..,...,1,1),IF(LEN(A)>0,SQL(...,"select * from table where 参数='"+A+"'",1,1),''))


  • 4关注人数
  • 647浏览人数
  • 最后回答于:2020-5-29 12:57
    请选择关闭问题的原因
    确定 取消
    返回顶部