tp5 查询求和_tp5数据库查询

注: 打印出最后一条数据库操作的sql语句

echo Db::getLastSql();

1.使用table方法查询

use think\Db;

//查询所有数据

$data = Db::table('user')->select();

//查询一条数据

$data = Db::table('user')->find();

2.使用name方法查询

use think\Db;

//查询所有数据

$data = Db::name('user')->select();

//查询一条数据

$data = Db::name('user')->find();

table和name的区别:

name方法会自动添加表前缀

3.助手函数查询db()

$data = db('user')->select();

$data = db('user')->find();

统计数据库条数

$data = db('user')->field('count(*) as tot')->select();

$data = table('user')->field(['count(*)'=>'tot'])->select();

Group分组聚合

//根据pass字段进行分组统计(pass相同 的数量)

$data = db('user')->field('pass,count(*) as tot')->group("pass")->select();

having过滤只能配合group分组使用

$data = db('user')->field('pass,count(*) as tot')->having('tot >= 2')->group("pass")->select();

union集合

//打印出user表跟goods表中的name(分开)

$data = Db::field("name")->table("user")->union("select name from goods")->select();

bind绑定参数(防止sql注入)

$id = input("id");

//删除的时候规定接收的id只能是 int类型

$data = Db::table("user")->where("id",":id")->bind(["id"=>[$id,\PDO::PARAM_INT]])->select();

统计数据

//年龄最大值

$data = db('user')->max('age');

//年龄最小值

$data = db('user')->min('age');

//年龄平均值

$data = db('user')->avg('age');

//求和

$data = db('user')->sum('age');

//统计数据条数

$data = db('user')->count('age');

4.视图查询(相当于多表查询)

//视图查询

$data = Db::view('goods','id,name') //查询出goods表的id跟name字段

->view('type','name','type.id=goods.cid','left')//查询type表的name字段,type表的id等于goods表的cid,左查询

->select();

//打印出最后执行的sql语句

echo Db::getLastSql();

//打印出查询出来的数据

dump($data);

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值