thinkphp 中where 多条件查询

今天做一个数据的查询

$products=M(‘products‘);

$prodName=isset($_POST[‘prodName‘])?I(‘post.prodName‘):‘‘;

$products->join(‘left join prods on prods.prodId = products.prodId‘)
->limit ( $page->firstRow . ‘,‘ . $page->listRows )
->where(‘proTypeId=‘.$proTypeId)

这个时候我需要对数据表prods进行一个模糊匹配

于是突发奇想在$map[‘prodName‘]=array(‘like‘,"%$prodName%");

中把表名加进去会不会成功读取数据库,结果成功了

$map[‘prods.prodName‘]=array(‘like‘,"%$prodName%");

时间: 2024-08-06 07:58:14

thinkphp 中where 多条件查询的相关文章

thinkphp基础学习简单条件查询

       $user = new Model("User");//        字符串条件查询        var_dump($user->where('id=42 AND username="bnbbs"')->select());        $map['id']=1;        $map['username']="bnbbs";        $map['email']="[email protected

mybatis中的多条件查询

使用Map集合和索引号 接口: /** * 多条件查询Map集合 * @param map * @return */public List<Student> findByManyCondition(Map<String,Object> map); /** * 多参数查询使用索引 * @param name * @param age * @return */public List<Student> findStudentByCondition(String name,in

php中的多条件查询

首先是查询所有,步骤不详述,连接数据库,查询表中的所有信息,foreach循环以表格的形式打印出来 然后就是form表单中提交查询的数据,这里以post方式提交到本页面,所以要判断post中是否有值,在判断post中的值是否为空字符串(这两种情况都默认用户没有输入,查询所有)默认规则:一般来说做查询的时候:用户不输入任何内容就是查询所有的 然后最重要的是拼接查询条件 关键代码: $tj1 = " 1=1"; $tj2 = " 1=1"; $name = "

List&lt;Map&lt;String, Object&gt; 中多个条件查询

在项目中,我们都尽量通过各层之间松耦合来降低故障的传递性,使各层除了部分业务有关联性之外,程序运行互不干扰.这时,页面应用和数据库之间的无直接联系的,而是通过后台应用的接口来获取数据,即在结构为List<Map<String, Object> 查询数据,又不想是满屏的if else语句,所以找一个比较好的实现方法,这里记录下. 1 List<Map<String,Object>> resultList=new ArrayList<>(); 2 3 fo

涨知识,涨知识 :ThinkPHP框架下Where条件查询Mysql数据库某字段是否为空

代码虐我千百遍,我对代码如初恋~ 问题: 查询某字段app_date数据是否为NULL,正常我们实现的办法是: $map['app_data'] = array('eq','null'); $data = M("Info") -> field("*") -> where($map) -> select() 利用echo  M("Info")->getLastSql();  打印sql语句如下: SELECT `id`,`n

.net在Oracle数据库中为In条件查询防止sql注入参数化处理

//返回in条件处理方法 public static string InsertParameters(ref List<OracleParameter> orclParameters, int[] lsIds, string uniqueParName) { string strParametros = string.Empty; for (int i = 0; i <= lsIds.Length - 1; i++) { strParametros += i == 0 ? ":

ThinkPHP中 按条件查询后列表显示

最近在项目中遇到了需要根据下拉框的条件筛选出符合条件的数据,然后进行列表显示的问题. 在ThinkPHP中进行列表显示的传统过程:通过在后台控制器中查询出数据,然后通过$this->assign()来实现控制器数据向页面的传递,在页面中通过<foreach>或<volist>标签来进行数据的解析,(注:在通过标签进行数据的解析时需要以“$”符号的形式). 在进行条件查询时,需要通过jquery中ajax的方式将条件GET到后台控制器,后台控制器中接收数据,然后根据条件进行查询

asp.net(c#)中如何在前端用js写条件查询,且不用调用存储过程

前端页面(源): <dx:ASPxButton ID="ASPxButton_Select" runat="server" Text="查询" AutoPostBack="false"> <ClientSideEvents Click="bt_select" /> </dx:ASPxButton> js部分: function bt_select() { //alert(

thinkphp中如何是实现多表查询

多表查询经常使用到,但如何在thinkphp中实现多表查询呢,其实有三种方法. 1 2 3 4 5 6 7 8 9 10 11 12 // 1.原生查询示例: $Model = new Model(); $sql = 'select a.id,a.title,b.content from think_test1 as a, think_test2 as b where a.id=b.id '.$map.' order by a.id '.$sort.' limit '.$p->firstRow.