Laravelで取得用SQLをORMではなく、個別SQLを直接、実行する方法
Laravelを使っていて、
各種データをSQLで取得する際に、
ORMを使って、
- 「select」項目
- 「where」項目
- 「join」項目
など、
各項目をORMを使って、
SQLを実行することが、
一般的に良く行う方法かと思います。
そんな中で、
ORMを使って、
実行できるかもしれないけれど、
ちょっと面倒なSQLなので、
個別SQLとして、
直接、SQLを実行したいことがあります。
この個別SQLを実行したいことが、
定期的に発生するので、
その方法をメモを残しておきます。
各種バージョン
Laravel
Laravelのバージョンとしては、
php artisan --version
というコマンドで確認すると、
$ php artisan --version
Laravel Framework 8.83.26
というバージョンであることがわかります。
対応内容
実際に個別のSQLを実行するためには、
selectの引数に直接、SQL文を渡すことで実行できます。
コードとしては、
DB::select('対象のSQL', $params);
このようになります。
例としては、
DB::select('
select
val1,
val2
from
sample_table
where id = ?
', array(1));
このように、
条件式などの設定値は、
SQL文の次に配列で渡して使います。
スキルを使って、就職/転職/副業する時のサイト
プログラミングのスキルなどを、自分なりに高めた上で、
自分のスキルをアピールして就職や転職を行い、年収をあげるか、
副業という形で、年収にプラスアルファの稼ぎを増やすことはできます。
まずはできる範囲で取り組むことで、
少しずつ、経験値も増え、自分のスキルが収入につながるのでおすすめです。