Laravel 拉威尔在哪里查询
我该如何处理拉威尔Laravel 拉威尔在哪里查询,laravel,Laravel,我该如何处理拉威尔 SELECT movie.title FROM movie WHERE movie.id IN (SELECT session.movie_id FROM session WHERE session.id = :id and date = :date) 首先,您需要一个包含电影和会话表的数据库,以及Laravel中的两个模型 电影模型 首先,您需要一个包含电影和会话表的数据库,以及Laravel中的两个模型 电影模型 您可以使用laravel的: 您可以使用laravel的
SELECT movie.title
FROM movie
WHERE movie.id IN
(SELECT session.movie_id FROM session WHERE session.id = :id and date = :date)
首先,您需要一个包含电影和会话表的数据库,以及Laravel中的两个模型 电影模型
首先,您需要一个包含电影和会话表的数据库,以及Laravel中的两个模型 电影模型
您可以使用laravel的:
您可以使用laravel的:
无论您如何使用laravel ORM,它都会生成多个查询,我建议您首先在会话表中查询并获取列表,然后在电影模型中的WHERE查询中使用该结果 无论您如何使用laravel ORM,它都会生成多个查询,我建议您先在会话表中查询并获取列表,然后在电影模型中的WHERE查询中使用该结果 $query=select movie.title from movie where movie.id在select session.movie\u id from session where session.id='.$id.'和date='.$date.' $resultSet=DB::选择$query
希望这有帮助。$query=从电影中选择movie.title,其中movie.id位于select session.movie\u id来自session,其中session.id='.$id',date='.$date'
$query = "SELECT movie.title
FROM movie
WHERE movie.id IN
(SELECT session.movie_id FROM session WHERE session.id = ? and date = ?)";
$movie = \DB::select($query, [$id, $date]);
$resultSet=DB::选择$query
希望这有帮助。使用左连接。
$query = "SELECT movie.title
FROM movie
WHERE movie.id IN
(SELECT session.movie_id FROM session WHERE session.id = ? and date = ?)";
$movie = \DB::select($query, [$id, $date]);
比如说,
$first=DB::session'movie.title'->leftjoin'session','session.movie_id','=','movie.id'->where'session.id','=',$id->where'session.date','=','$date'->获取
为了检查结果
dd优先
希望这有帮助。使用左连接。
$query = "SELECT movie.title
FROM movie
WHERE movie.id IN
(SELECT session.movie_id FROM session WHERE session.id = ? and date = ?)";
$movie = \DB::select($query, [$id, $date]);
比如说,
$first=DB::session'movie.title'->leftjoin'session','session.movie_id','=','movie.id'->where'session.id','=',$id->where'session.date','=','$date'->获取
为了检查结果
dd优先
希望这有帮助。使用DB::raw运行raw查询
$query = "SELECT movie.title
FROM movie
WHERE movie.id IN
(SELECT session.movie_id FROM session WHERE session.id = ? and date = ?)";
$movie = \DB::select($query, [$id, $date]);
$query=DB::selectDB::rawselect movie.title
从电影
电影id在哪里
从会话中选择session.movie_id,其中session.id=$id和date=$date
返回$query 使用DB::raw运行原始查询 $query=DB::selectDB::rawselect movie.title 从电影 电影id在哪里 从会话中选择session.movie_id,其中session.id=$id和date=$date
返回$query 对于优化的代码,使用左连接是一个很好的选择。否则,请检查以下说明 下面的代码行将生成获取电影id的查询。使用toSql方法将返回查询而不是结果
$movie_id_qry = DB::table('session')->select('session.movie_id')->whereRaw('session.id = '. $id .' && date = '. $date)->toSql();
可以包括此查询以获取电影标题:
$movie_title = DB::table('movies')->where('movie.id', '=', $movie_id_qry)->pluck('movie.title');
结果:echo$movie_title
如果找到匹配项,则Pulk方法将仅返回标题列。
要检索整行,请使用get方法而不是pull
由于toSql方法将只生成查询,因此组合的DB获取只发生在第二行代码中
希望这会有所帮助。使用左连接是优化代码的一个好选择。否则,请检查以下说明
DB::table('movies')
->select(
movies.title,
DB::raw(
'(select session.movie_id from session where session.id = id AND date = date') as movie_id'
)
)->where('movies.id','movie_id')get();
下面的代码行将生成获取电影id的查询。使用toSql方法将返回查询而不是结果
$movie_id_qry = DB::table('session')->select('session.movie_id')->whereRaw('session.id = '. $id .' && date = '. $date)->toSql();
可以包括此查询以获取电影标题:
$movie_title = DB::table('movies')->where('movie.id', '=', $movie_id_qry)->pluck('movie.title');
结果:echo$movie_title
如果找到匹配项,则Pulk方法将仅返回标题列。
要检索整行,请使用get方法而不是pull
由于toSql方法将只生成查询,因此组合的DB获取只发生在第二行代码中
希望这会有所帮助。@Mysteryos只是在谷歌上搜索,但我在这里没有找到任何yetStart:@Mysteryos只是在谷歌上搜索,但我在这里没有找到任何yetStart:
DB::table('movies')
->select(
movies.title,
DB::raw(
'(select session.movie_id from session where session.id = id AND date = date') as movie_id'
)
)->where('movies.id','movie_id')get();