getdata table表格数据join mysql方法

 更新时间:2019年02月27日 14:50:35   作者:我是高手高手高高手  
今天小编就为大家分享一篇关于getdata table表格数据join mysql方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
public function json_product_list($where, $order){
 global $_M;
 $this->table = load::sys_class('tabledata', 'new');
 $p = $_M['table']['product'];
 $s = $_M['table']['shopv2_product'];
 if($_M['config']['shopv2_open']){//开启在线订购时
  $table = $p.' Left JOIN '.$s." ON ({$p}.id = {$s}.pid)";
  $where = "{$p}.lang='{$_M['lang']}' and ({$p}.recycle = '0' or {$p}.recycle = '-1') {$where}";
 }else{
  $table = $p;
  $where = "lang='{$_M['lang']}' and (recycle = '0' or recycle = '-1') {$where}";
 }
 $data = $this->table->getdata($table, '*', $where, $order);
 foreach($data as $key=>$val){
  if(!$val['pid'])$data[$key]['pid'] = $val['id'];
 }
 return $data;
 }

例子一:

                    $u = $_M['table']['user'];
                    $o = $_M['table']['shopv2_order'];
                    $d = $u.' Left JOIN '.$o." ON {$u}.id = {$o}.uid";

  function dotable_course_user_list_json(){
   global $_M;
    $id=$_M[form]['id'];//教师模块ID
    $tid=$_M[form]['tid'];//教师登录用户ID
    $tn=$_M[form]['tn'];//教师用户名
     $term1  = $_M[form]['search_title'];  //获取搜索关键词
    $search1 = $term1  ?"and username like '%{$term1}%' ":'';//增加查询报名表编号
    $table = load::sys_class('tabledata', 'new');
    //$where = "lang='cn' {$search} {$search1}"; //在条件语句中加入查询条件 $search
   $u = $_M['table']['user'];
   $o = $_M['table']['shopv2_order'];
   $d = $u.' Left JOIN '.$o." ON {$u}.id = {$o}.uid";
    //$table = $u.' Left JOIN '.$a." ON (find_in_set(u.id,a.user_id) != 0)";
   $where = "{$u}.lang='{$_M['lang']}'";
    $order = "{$u}.id DESC";
    $array = $table->getdata($d, '*', $where, $order);
    //$data = $this->table->getdata($table, '*', $where, $order)
    //$time=date('Y-m-d H:i:s',time());
    foreach($array as $key => $val){
    //会员组
    $rs_user_group=DB::get_one("SELECT id,name FROM ".$_M['table']['user_group']." where id='$val[groupid]' ");
    //状态
     //班型
    //$rs1=DB::get_all("SELECT s.class_id,a.user_id,a.id,a.number,cc.classhour FROM ".$_M['table']['my_application']." as a INNER JOIN ".$_M['table']['my_application_subject']." as s ON a.number=s.number INNER JOIN ".$_M['table']['my_class']." as c ON s.class_id=c.id INNER JOIN ".$_M['table']['my_class_course']." as cc ON cc.class_id=c.id where s.class_id<>0 and s.type_11=0 and c.teachers_id='$val[id]' and cc.endtime>'$time'");
    $list = array();
    $list[] = "{$val['username']}";
    $list[] = "{$rs_user_group['name']}";
    $list[] = "";
    $list[] = "";
    $list[] = "";
    $list[] = "";
    $list[] = "";
    $list[] = "";
    $list[] = "";
    $list[] = "<a class='btn btn-danger view_error' lay-id='{$val['id']}' href='javascript:;'><i class='glyphicon glyphicon-edit'></i> 错题集</a>";
    $list[] = "";
    $list[] = "";
    $rarray[] = $list;
    }
   // dump($rarray);
   $table->rdata($rarray);//返回数据
  }

例子二:join find_in_set

                    $u = $_M['table']['user'];
                    $a = $_M['table']['my_application'];
                    $d = $u.' Left JOIN '.$a." ON find_in_set({$u}.id,{$a}.user_id) != 0";

  function dotable_course_user_list_json(){
   global $_M;
    $id=$_M[form]['id'];//教师模块ID
    $tid=$_M[form]['tid'];//教师登录用户ID
    $tn=$_M[form]['tn'];//教师用户名
     $term1  = $_M[form]['search_title'];  //获取搜索关键词
    $search1 = $term1  ?"and username like '%{$term1}%' ":'';//增加查询报名表编号
    $table = load::sys_class('tabledata', 'new');
    //$where = "lang='cn' {$search} {$search1}"; //在条件语句中加入查询条件 $search
   $u = $_M['table']['user'];
   //$o = $_M['table']['shopv2_order'];
   $a = $_M['table']['my_application'];
   //$d = $u.' Left JOIN '.$o." ON {$u}.id = {$o}.uid";
   $d = $u.' Left JOIN '.$a." ON find_in_set({$u}.id,{$a}.user_id) != 0";
   $where = "{$u}.lang='{$_M['lang']}'";
    $order = "{$u}.id DESC";
    $array = $table->getdata($d, '*', $where, $order);
    //$data = $this->table->getdata($table, '*', $where, $order)
    //$time=date('Y-m-d H:i:s',time());
    foreach($array as $key => $val){
    //会员组
    $rs_user_group=DB::get_one("SELECT id,name FROM ".$_M['table']['user_group']." where id='$val[groupid]' ");
    //状态
     //班型
    //$rs1=DB::get_all("SELECT s.class_id,a.user_id,a.id,a.number,cc.classhour FROM ".$_M['table']['my_application']." as a INNER JOIN ".$_M['table']['my_application_subject']." as s ON a.number=s.number INNER JOIN ".$_M['table']['my_class']." as c ON s.class_id=c.id INNER JOIN ".$_M['table']['my_class_course']." as cc ON cc.class_id=c.id where s.class_id<>0 and s.type_11=0 and c.teachers_id='$val[id]' and cc.endtime>'$time'");
    $list = array();
    $list[] = "{$val['username']}";
    $list[] = "{$rs_user_group['name']}";
    $list[] = "";
    $list[] = "";
    $list[] = "";
    $list[] = "";
    $list[] = "";
    $list[] = "";
    $list[] = "";
    $list[] = "<a class='btn btn-danger view_error' lay-id='{$val['id']}' href='javascript:;'><i class='glyphicon glyphicon-edit'></i> 错题集</a>";
    $list[] = "";
    $list[] = "";
    $rarray[] = $list;
    }
   // dump($rarray);
   $table->rdata($rarray);//返回数据
  }

注意:

1、列出全部数据

$data = $this->table->getdata($table, '*', $where, $order)

2、只列出指定字段数据

$array = $table->getdata($d, "{$u}.username,{$u}.groupid", $where, $order);

3、模糊查询

$where = "{$u}.lang='{$_M['lang']}' and {$u}.username like '%{$term1}%' ";

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

  • MySQL 视图(View)原理解析

    MySQL 视图(View)原理解析

    本篇重点讲述视图是如何实现的,以及视图如何和查询优化器交互,从而我们可以根据这些知识了解如何通过视图提高性能。
    2021-05-05
  • MySQL+Redis缓存+Gearman共同构建数据库缓存的方法

    MySQL+Redis缓存+Gearman共同构建数据库缓存的方法

    这篇文章主要介绍了MySQL+Redis缓存+Gearman共同构建数据库缓存,部署后在MySQL端进行创建一个用户给与远程登录权限,使得Redis作为缓存可以用来同步数据使用,需要的朋友可以参考下
    2022-10-10
  • 一文带你搞懂MySQL的MVCC机制

    一文带你搞懂MySQL的MVCC机制

    MySQL中的MVCC机制想必大家都有所耳闻吧,虽然在平时MySQL使用过程中基本上用不到,但是面试中出场率十分高,那么你对MVCC机制了解多少呢,MVCC机制是用来干嘛的呢,底层的工作原理是怎么样的呢,本文就带你一探究竟
    2023-07-07
  • MySQL锁阻塞的深入分析

    MySQL锁阻塞的深入分析

    这篇文章主要给大家介绍了关于MySQL锁阻塞的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • MySQL8.0新特性之支持原子DDL语句

    MySQL8.0新特性之支持原子DDL语句

    这MySQL 8.0开始支持原子数据定义语言(DDL)语句。此功能称为原子DDL。这篇文章主要介绍了MySQL8.0新特性——支持原子DDL语句,需要的朋友可以参考下
    2018-07-07
  • SQLyog的下载、安装、破解、配置教程(MySQL可视化工具安装)

    SQLyog的下载、安装、破解、配置教程(MySQL可视化工具安装)

    SQLyog是一款MySQL可视化工具,他可以将部分SQL操作通过图形化界面操作来完成,方便开发者更好的进行开发及数据库设计,这篇文章主要介绍了SQLyog的下载、安装、破解、配置(MySQL可视化工具安装),需要的朋友可以参考下
    2022-09-09
  • Linux服务器中MySQL远程连接的开启方法

    Linux服务器中MySQL远程连接的开启方法

    今天在Linux服务器上安装了msyql数据库,在本地访问的时候可以访问,但是我想通过远程的方式访问的时候就不能访问了,查询资料后发现,Linux下MySQL默认安装完成后只有本地访问的权限,没有远程访问的权限,需要你给指定用户设置访问权限才能远程访问该数据库
    2017-06-06
  • mysql 5.7.17 免安装版配置方法图文教程(windows10)

    mysql 5.7.17 免安装版配置方法图文教程(windows10)

    这篇文章主要为大家详细介绍了windows10下mysql 5.7.17 免安装版配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • MySQL启用慢查询日志记录方法

    MySQL启用慢查询日志记录方法

    由于程序员写的东西不一定是最优的所以我们只要启用mysql慢查询日志功能就可以分析每一条sql语句所运行相关性能了,下面大家一起来看看
    2017-01-01
  • MySQL Innodb表导致死锁日志情况分析与归纳

    MySQL Innodb表导致死锁日志情况分析与归纳

    发现当备份表格的sql语句与删除该表部分数据的sql语句同时运行时,mysql会检测出死锁,并打印出日志
    2012-12-12

最新评论