クエリビルダーで生の SQL クエリを文字列として出力するにはどうすればよいですか? 質問する

クエリビルダーで生の SQL クエリを文字列として出力するにはどうすればよいですか? 質問する

次のコードがあるとします:

DB::table('users')->get();

上記のデータベース クエリ ビルダーが生成する生の SQL クエリ文字列を取得したいと思います。この例では、次のようになりますSELECT * FROM users

どうすればいいですか?

ベストアンサー1

toSql()インスタンスでメソッドを使用しますQueryBuilder

DB::table('users')->toSql()返される値は次のようになります:

`users` から * を選択

これは、イベント リスナーを接続するよりも簡単で、クエリの構築中にいつでもクエリが実際にどのようになるかを確認することもできます。

注意: このメソッドはクエリ ビルダーまたは Eloquent で機能しますが、または のtoSql()代わりに が使用されます。このメソッドを使用してクエリを実行し、同時に SQL を取得することはできません。first()get()

おすすめ記事