忍者ブログ

STEP UP BLOG

Home > ブログ > > [PR] Home > ブログ > Laravel > Laravel4で発行されているSQLを取得する

Laravel4で発行されているSQLを取得する

Laravelで今発行しようとしているSQLを知りたい場合があります。
explainしてパフォーマンスチューニングしたいときなど知りたいですよね。
そんなときのために用意されているのがtoSql()です。
以下、使用方法。
・クエリービルダの場合
$sql = DB::table('user')->where('name', '=', '一郎')->toSql();

ただ注意点として、取得できるSQLはプレースホルダが置き換えられる前となります。
select * from `user` where `name` = ?

こんな感じです。
・Eloquent ORMの場合
こちらもクエリービルダと同様です。ちなみにEloquentは「エロクアント」と読むそうです。
$sql = User::where('name', '=', '一郎')->toSql();

これで同じように取得できます。
toSql()とexplainを駆使してどんどん高速化していきましょう。速いことはいいこと!
PR

Comment0 Comment

Comment Form

  • お名前name
  • タイトルtitle
  • メールアドレスmail address
  • URLurl
  • コメントcomment
  • パスワードpassword

PAGE TOP