字段当做键值key
集合的keyBy()方法详情:戳这里
创建模型类和数据库迁移文件
php artisan make:model Post -m
创建控制器和基础的方法
php artisan make:controller PermissionController --resource
子查询1.
SELECT COUNT(*) FROM (SELECT * FROM abc GROUP BY col1) AS a;
laravel代码
$sub = Abc::where(..)->groupBy(..); // Eloquent Builder instance $count = DB::table( DB::raw("({$sub->toSql()}) as sub") ) ->mergeBindings($sub->getQuery()) // you need to get underlying Query Builder ->count();
子查询2.
SELECT `p`.`id` FROM `products` p WHERE `p`.`id` IN ( SELECT `product_id` FROM `product_category` WHERE `category_id` IN ('1', '2') ) AND `p`.`active`=1
laravel代码
Products::whereIn('id', function($query){ $query->select('paper_type_id') ->from(with(new ProductCategory)->getTable()) ->whereIn('category_id', ['1', '2']) ->where('active', 1); })->get();