РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
236 of 1392 menu

Метод toSql

Метод toSql применяется к запросу Eloquent или Query Builder и возвращает строку SQL-запроса с плейсхолдерами вместо значений. Это полезно для отладки и анализа формируемых запросов. Метод не выполняет запрос, а только показывает его структуру.

Синтаксис

<?php Model::where($column, $operator, $value)->toSql(); ?>

Пример

Давайте получим SQL-запрос для выборки статей с фильтрацией по статусу:

<?php use AppModelsArticle; $sql = Article::where('status', 'published')->toSql(); echo $sql; ?>

Результат выполнения кода:

"select * from articles where status = ?"

Пример

Давайте получим SQL-запрос для выборки статей с несколькими условиями:

<?php use AppModelsArticle; $sql = Article::where('user_id', 1) ->where('status', 'published') ->orderBy('created_at', 'desc') ->limit(10) ->toSql(); echo $sql; ?>

Результат выполнения кода:

"select * from articles where user_id = ? and status = ? order by created_at desc limit 10"

Пример

Давайте получим SQL-запрос с использованием соединения таблиц:

<?php use AppModelsArticle; use IlluminateSupportFacadesDB; $sql = Article::join('users', 'articles.user_id', '=', 'users.id') ->select('articles.*', 'users.name') ->where('articles.status', 'published') ->toSql(); echo $sql; ?>

Результат выполнения кода:

"select articles.*, users.name from articles inner join users on articles.user_id = users.id where articles.status = ?"

Смотрите также

  • метод toRawSql,
    который возвращает полный SQL-запрос с подставленными значениями
  • метод get,
    который выполняет запрос и возвращает коллекцию
  • метод first,
    который возвращает первую запись из результата
  • метод dd,
    который выводит запрос и останавливает выполнение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить