Laravel 查询生成器到 Eloquent 生成器
Laravel Query Builder to Eloquent Builder
如何将以下 Laravel 数据库查询生成器转换为 Eloquent?
是否可以做到LaravelEloquent?
$reports = DB::table('clicks')
->select('offer_name', DB::raw('offer_name as offers, COUNT(id) as clicks, SUM(IF(status = 1, 1, 0)) as lead, SUM(IF(status=1, payout, 0)) as earnings'))
->groupBy('offer_name')
->get();
您可以在 DB::table('clicks')
上更改为 Eloquent Builder。 select
和 groupBy
与 Eloquent 相同。
现在使用命令制作点击模型。
php artisan make:model Click
它将在 App 文件夹中创建 Click.php
文件。就像我在下面提到的那样。
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Click extends Model
{
protected $table = 'clicks';
}
现在您的查询如下所示。
$reports = \App\Click::select('offer_name', DB::raw('offer_name as offers, COUNT(id) as clicks, SUM(IF(status = 1, 1, 0)) as lead, SUM(IF(status=1, payout, 0)) as earnings'))
->groupBy('offer_name')
->get();
如何将以下 Laravel 数据库查询生成器转换为 Eloquent?
是否可以做到LaravelEloquent?
$reports = DB::table('clicks')
->select('offer_name', DB::raw('offer_name as offers, COUNT(id) as clicks, SUM(IF(status = 1, 1, 0)) as lead, SUM(IF(status=1, payout, 0)) as earnings'))
->groupBy('offer_name')
->get();
您可以在 DB::table('clicks')
上更改为 Eloquent Builder。 select
和 groupBy
与 Eloquent 相同。
现在使用命令制作点击模型。
php artisan make:model Click
它将在 App 文件夹中创建 Click.php
文件。就像我在下面提到的那样。
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Click extends Model
{
protected $table = 'clicks';
}
现在您的查询如下所示。
$reports = \App\Click::select('offer_name', DB::raw('offer_name as offers, COUNT(id) as clicks, SUM(IF(status = 1, 1, 0)) as lead, SUM(IF(status=1, payout, 0)) as earnings'))
->groupBy('offer_name')
->get();