bob体育appthinkPHP数据查询常用方法总结_php实例_脚本之家

2020-02-15 08:35栏目:bob体育平台
TAG:

本文实例讲述了thinkPHP简单实现多个子查询语句的方法。分享给大家供大家参考,具体如下:

本文实例讲述了thinkPHP数据查询常用方法。分享给大家供大家参考,具体如下:

本文实例讲述了thinkPHP5框架实现多数据库连接,跨数据连接查询操作。分享给大家供大家参考,具体如下:

理解好sql语句,就能用好thinkphp等框架中的数据库操作

thinkphp已经封装好了常用的查询方法,且都比较实用,对于不常用的查询框架也保留了原始查询方法query

1. 多数据库连接

原sql:

$Model = new Model() // 实例化一个model对象 没有对应任何数据表$Model->query("select * from think_user where status=1");

方法1:在需要连接其他数据库的地方,使用Db::connect()方法动态连接数据库,方法参数为数据库配置的数组或字符串例如:

SELECT a.*,b.* from (SELECT a.id as opener_id,a.name,sum as bonus_money,c.year,c.month from sh_opener aLEFT JOIN sh_opener_bonus b on a.id = b.opener_idLEFT JOIN sh_incentive c on b.incentive_id = c.idwhere a.agent_id = 3 and a.status = 1 and c.year = 2015 and c.month = 11GROUP BY a.id,c.year,c.month) aLEFT JOIN (SELECT a.id as payment_id,a.opener_id,a.money as payment_money,a.trode_number from sh_opener_bonus_payment awhere a.year = 2015 and a.`month` = 11 and a.agent_id = 3) bon a.opener_id = b.opener_id;

如果刚学Thinkphp对框架不太了解可以用queryexecute 两个方法可以实现任何的sql操作。query用于查询操作execute用于非查询操作。但是框架已经封装好了常用的方法,且用起来更方便。

Db::connect('mysql://root:1234@127.0.0.1:3306/thinkphp#utf8');

Db::connect([ // 数据库类型 'type' => 'mysql', // 数据库连接DSN配置 'dsn' => '', // 服务器地址 'hostname' => '127.0.0.1', // 数据库名 'database' => 'thinkphp', // 数据库用户名 'username' => 'root', // 数据库密码 'password' => '', // 数据库连接端口 'hostport' => '', // 数据库连接参数 'params' => [], // 数据库编码默认采用utf8 'charset' => 'utf8', // 数据库表前缀 'prefix' => 'think_',]);

这里面有两个子查询语句,其实子查询语句也是表,只不过是存在内存中罢了。

下面是最常用的查询方法:

详细用法参考thinkphp5完全开发手册:

thinkphp实现:

1. select()

方法2:在应用配置文件里面添加多个数据库配置,例如:

版权声明:本文由bob体育app发布于bob体育平台,转载请注明出处:bob体育appthinkPHP数据查询常用方法总结_php实例_脚本之家