写代码时, 为了更好的查明错误, 经常需要查看 SQL 原生语句
第一种:
获取当前查询语句的原生 SQL 语句且不执行
代码
DB::name("xxx")->where('id', 1)->fetchSql->find();
执行结果
SELECT * FROM `xxx` WHERE `id` = 1 LIMIT 1
第二种
还可以用
getLastSql()
, 获取方法前最后一条 SQL 原生语句
代码
XXX::where('id', 1)->find();
dd(XXX::getLastSql());
执行结果
SELECT * FROM `xxx` WHERE `id` = 1 LIMIT 1