laravel数据库常用方法

该博客介绍了数据库的常见操作方法,包括插入、表更新、列表查询、分页查询、模糊查询、排序、多表联查,还提及了筛选条件和查询字段等内容,为数据库操作提供了基础方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.简单的数据库插入的方法;

$dbData =  ActivityModel::query()->insert($param);

//第二种返回插入对象  ----$dbData
$dbData = (new ConfigHome())->create($param_new);

2.简单的数据库表更新方法:

   /**
         * 更新数据库如果更新内容一样的话会报失败,一般的话有操作时间,这个时间会变化,所以不会出现问题
        */
            $whereArray = array();
            $whereArray[] = ['activity_id', '=', $param['activity_id']];
            $dbData = ActivityModel::where($whereArray)->update($param);

3.简单的列表查询:

$whereArray[] = ['activity_id', '=', $param['activity_id']];
$whereArray[]=['spu_id', '=', '1323'];

 $dbData =  ActivityModel::query()->where($whereArray)->get();

4.需要分页的话:

 /**
             *   paginate   不需要添加get来调用
             *   skip   则需要添加->get()来调用sql
             */
   if (isset($param['size'])) {
                $pagesize = $param['size'];
            }else{
                $pagesize = 10;
            }

            if (isset($param['page'])) {
                $page = $param['page'];
            } else {
                $page = 1;
            }

//第一种
   ->paginate($pagesize,$columns = ['*'], $pageName = 'page', $page);
//第二种
  ->skip(($page - 1) * $pagesize)->take($pagesize)->where($whereArray)->get();

5.模糊查询:

$whereArray[]=['goods.name', 'like', '%'.'$param['search']'.'%'];

6.排序:

//倒序
->orderBy('activity_id', 'DESC')
//正序
->orderBy('activity_id', 'ASC')

7.多表联查的时候

//多表联查1
->join('goods',function ($join){
                    $join->on('activity.spu_id', '=', 'goods.goods_id');
                },null,null,'left')

//多表联查2
 ->leftJoin('home_cell', 'home.id', '=', 'home_cell.home_id')
//多表联查3(多条件)
 ->leftJoin('manage_msg', function ($join) use ($param) {
                $join->on('manage_msg.message_id', '=', 'message.id')
                    ->where('manage_msg.user_id', '=', $param['user_id']);
            })

8.筛选条件


->when(!empty($whereArray),function($join) use ($whereArray) {
                return $join->where($whereArray);
            })
->when(!empty($whereInArray),function($join) use ($whereInArray) {
                return $join->orWhere($whereInArray);
            })

9.查询字段

->select('message.*','manage_msg.create_time as c_time','manage_msg.update_time as u_time','manage_msg.user_id as u_id','manage_msg.message_id','manage_msg.is_read','manage_msg.is_move')

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值