
SQL中where 1=1的用处
解释:
其实,1=1 是永恒成立的,意思无条件的,也就是说在SQL语句中有没有这个1=1都可以。
这个1=1常用于应用程序根据用户选择项的不同拼凑where条件时用的。
如:web界面查询用户的信息,where默认为1=1,这样用户即使不选择任何条件,sql查询也不会出错。如果用户选择了姓名,那么where变成了where 1=1 and 姓名=‘用户输入的姓名’,如果还选择了其他的条件,就不断在where 条件后追加 and语句就行了。
如果不用1=1的话,每加一个条件,都要判断前面有没有where 条件,如果没有就写where …,有就写and语句,因此此时用1=1可以简化了应用程序的复杂度。
大高朋团购系统是一套Groupon模式的开源团购程序,开发的一套网团购程序,系统采用ASP+ACCESS开发的团购程序,安装超简,功能超全面,在保留大高朋团购系统版权的前提下,允许所有用户免费使用。大高朋团购系统内置多种主流在线支付接口,所有网银用户均可无障碍支付;短信发送团购券和实物团购快递发货等。 二、为什么选择大高朋团购程序系统? 1.功能强大、细节完善 除了拥有主流团购网站功能,更特别支
0
例:
如下面代码首先定义$where= ‘1=1’,后面就可以不用去判断是否存在$where
public function listAction()
{
$get = $this->getQuery();
$statementBalanceDetailModel = M('Ticket\StatementBalanceDetail');
$page = isset($get['page']) ? intval($get['page']) : 1;
$pageSize = isset($get['page_size']) ? intval($get['page_size']) : 10;
//用处
$where = ' 1=1 ';
$binds = array();
if (isset($get['id']) && $get['id'] != '') {
$where .= ' and id = :id';
$binds['id'] = trim($get['id']);
}
if (isset($get['shop_name']) && $get['shop_name'] != '') {
$where .= ' and shop_name = :shop_name';
$binds['shop_name'] = trim($get['shop_name']);
}
if (isset($get['statement_sn']) && $get['statement_sn'] != '') {
$where .= ' and statement_sn = :statement_sn';
$binds['statement_sn'] = trim($get['statement_sn']);
}
$where .= ' order by id desc';
$result = $statementBalanceDetailModel->paginate($where, $pageSize, $page, $fields = array(), $binds);
$sceneryList = $result['data'];
$total = $result['total_result'];
$pager = Paginate::web($total, $page, $pageSize);
$data = array(
'pager' => $pager,
'sceneryList' => $sceneryList,
);
$this->getView()->assign($data);
}本文转载自:https://blog.csdn.net/longgeaisisi/article/details/100599010
推荐学习:mysql教程
以上就是SQL中“where 1=1”有什么用?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号