不想用where 1=1
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不想用where 1=1相关的知识,希望对你有一定的参考价值。
sql="select * from payout";
if(yourname!="")
sql=sql + " where yourname like '%yourname%'";
if(beginDate!="")
sql=sql+" and [time] > beginDate";
假如说yourname==""怎么办呀?
sql语句就成了
sql="select * from payout and [Time] > beginDate"
除了加上where 1=1和很多if……else来判断条件拼接sql语句之外,有没有更好的方法。
qtoy2ha的回答也不行啊,可能会出现
sql="select * from payout where and [time] > beginDate"
我用的是C#中的StringBuilder的append()方法。数据量大的时候where 1=1不是效率不高吗?
sql="select * from payout where 1=1 ";
if(yourname!="")
sql=sql + "and yourname like \'%yourname%\'";
if(beginDate!="")
sql=sql + "and [time] > beginDate";
参考技术A 不好意思,C#我不会,不知道怎么用,实在不行你就用where 1=1 吧
sql = "";
if(yourname!="")
sql=sql + " and yourname like '%yourname%'";
if(beginDate!="")
sql=sql+" and [time] > beginDate";
if(sql !="")
//本来应该在这里加上像ASP里的 sql = mid(sql,5),php的 $sql = substr($sql,4)
sql = "where" + sql;
sql="select * from payout"+sql; 参考技术B 楼主不要多想了,一般情况下,都是用1=1的,况且这样真的很方便 参考技术C 学习.发现大侠真的存在哦。.
以上是关于不想用where 1=1的主要内容,如果未能解决你的问题,请参考以下文章