ハマログ

株式会社イーツー・インフォの社員ブログ

laravel5で実際に実行されたクエリを確認する

クエリビルダやEloquentを利用する際に、実際に実行されたクエリを確認したいケースがあります。
その際はDB::enableQueryLogとDB::getQueryLogを利用して、実際に実行されたクエリを確認できます。

// 求人テーブル取得
DB::enableQueryLog();
$jobs = Job::open()->has('jobcategory')->has('treatments')->orderBy('jobcategory_id')->orderBy('updated_at')->get();
dd(DB::getQueryLog());

実行されたクエリ
array:1 [
0 => array:3 [
"query" => "select * from jobs where webopentype = ? and status = ? and jobid not in (?, ?, ?, ?, ?, ?, ?, ?) and exists (select * from jobcategories where jobs.jobcategory_id = jobcategories.id) and exists (select * from treatments inner join job_treatment on treatments.id = job_treatment.treatment_id where job_treatment.job_id = jobs.id) order by jobcategory_id asc, updated_at asc"
"bindings" => array:10 [
0 => 1
1 => 3
2 => 24848
3 => 25556
4 => 25557
5 => 25558
6 => 25559
7 => 25677
8 => 25926
9 => 25927
]
"time" => 498.53
]
]

開発中に簡単に確かめることができますね(^^♪

Laravel5logsqllog

  S.I   2017年9月26日


関連記事

Docker + Laravelの速度改善

下記の記事を参考にして、改善できました、ありがとうございます。 https://…

Laravel NotificationsでChatworkに通知する

Laravel5.3より、Notificationsという仕組みが備わったので、…

Laravelのメール文字化け対策

Laravelのメール送信で文字化けと対決したのでその記録。 Swift Mai…


← 前の投稿

次の投稿 →