実現したいこと
Laravelフレームワークを使用してWebアプリを作成しています
Model内で特定のデータを取得する際に、where句のIN句を使用してデータを取得する場面があり、
whereInを使用せずに自前で記述をして取得がしたいです。
お知恵を貸してください。
該当のソースコード
PHP
1$famfam = "101, 102, 103"; 2 3$query = User::from('users as usr')->select('usr.id', 'usr.name', 'fam.address'); 4$sub_query = DB::raw('(select 5 * 6 from family_info 7 where update_date = (select max(update_date) 8 from family_info 9 where fam_id in ('.$famfam.')) as fam'); 10$query->join($sub_query, 'usr.id', 'fam.user_id'); 11$query->where('usr.del_flg', '=', '0'); 12$query->whereRaw('fam.id in :fams', ['fams' => $famfam]);
↑↑の12行目をどうにかしたいです
試したこと
whereRawで試したがNG
→「and fam.id in: fams」となってしまっている
whereInを試したがNG
→$famfamを整形してしまっているため、動かないと認識
補足情報(FW/ツールのバージョンなど)
Laravel 9
PHP 8.1
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/12/16 23:10