
下面 sql 中 where 1=1 是什么意思? 劳烦详细解释. 代码如下:
select*formtestowhere1=1ando.testNamelike'%张%'ando.testRemarklike'%三%'...
select * form test o where 1=1 and o.testName like '%张%' and o.testRemark like'%三%'
展开
2个回答
展开全部
有点像sql注入。
--------更新------
因为看到另一个回答没追答,我代为补充:
比如设计多条件查询界面,用户选择列名和值,有点类似淘宝查询。
后台拼接sql就会这样(因为你没说语言,所以我只用伪代码):
string sql = "select * from tablename where 1 = 1 "
for i = 1 to user selected columns count
sql += "and columnNames[i] like '%value[i]%'"
所以1=1起到让后面的and的语法合法的作用。
展开全部
它和select * form test o where o.testName like '%张%' and o.testRemark like'%三%' 没什么区别,不过有些情况下有用,比如在不定数量查询条件情况下,1=1可以很方便的规范语句
追问
还是不太懂.. 只是起到规范语句的作用么? 不定数量查询是什么意思?
追答
不定量查询条件,就是查询条件不确定,可能有,可能没有
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询