# Просмотр SQL запросов в Laravel

При работе с построителем запросов иногда бывает нужно посмотреть, какой SQL запрос совершается к базе. Для этого есть различные способы.

## Через Debugbar

Самый лучший способ - это установить панель debugbar и отслеживать запросы через нее. Для этого нужно перейти на вкладку Queries.

## Через QueryLog

Перед запросом включаем лог запросов и сразу после запроса делаем дамп:

`<?php class PostController extends Controller { public function show() { DB::enableQueryLog(); DB::table('posts')->where('id', '>', 5)->get(); dump(DB::getQueryLog()); } } ?>`

## Через toSql

Следующий способ также отобразит запрос, но без подставления переменных в условие запроса:

`<?php class PostController extends Controller { public function show() { $query = DB::table('posts')->where('id', '>', 5)->toSql(); dump($query); } } ?>`

## Дамп

Можно посмотреть запрос через метод `dd`:

`<?php class PostController extends Controller { public function show() { DB::table('posts')->where('id', '>', 5)->dd(); } } ?>`

Можно также посмотреть запрос через метод `dump`:

`<?php class PostController extends Controller { public function show() { DB::table('posts')->where('id', '>', 5)->dump(); } } ?>`

## Практические задачи

Дан следующий запрос:

`<?php DB::table('posts')->where('id', '!=', 3)->get(); ?>`

Посмотрите различными способами, какой SQL запрос выполняется на самом деле.

Определите, за какое время был выполнен приведенный запрос.

← →
↑