这个where1=1作用是什么

select * from 订单 

where 1 = 1

${if(len(货主地区) == 0,"","and 货主地区 = '" + 货主地区 + "'")}

这个语句中的where1 = 1意义、作用是什么

FineReport 帆软用户Bjnv500N6k 发布于 2022-4-12 15:21
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
1
CD20160914Lv8专家互助
发布于2022-4-12 15:22(编辑于 2022-4-12 15:22)

就是条件永远为真。如果不录入参数。。表示查询所有数据。。。这样后面如果再录入数据的话,,就拼一下  and 货主地址='广东'   这样就不报错了。。

最佳回答
2
Z4u3z1Lv6专家互助
发布于2022-4-12 15:28

确实就是为了判断方便  比如

select * from 订单 

where 1 = 1

${if(len(货主地区) == 0,"","and 货主地区 = '" + 货主地区 + "'")}

${if(len(订单ID) == 0,"","and 订单ID = '" + 货主地区 + "'")}

等效于

select * from 订单 

${if(len(货主地区) == 0,""," WHERE 货主地区 = '" + 货主地区 + "'")}

${if(len(订单ID) == 0,"",if(len(货主地区) == 0," WHERE 订单ID = '" + 货主地区 + "'"," AND订单ID = '" + 货主地区 + "'"))}

 明显第二种方法就复杂多了  太容易出错

最佳回答
0
krystal033Lv7高级互助
发布于2022-4-12 15:22
  • 3关注人数
  • 624浏览人数
  • 最后回答于:2022-4-12 15:28
    请选择关闭问题的原因
    确定 取消
    返回顶部