如何在 Laravel 中编写这个复杂的查询?
How to write this complex query in Laravel?
大家好,请问我如何编写这个查询:
$laureats=Laureat::select('laureats.*')
->from(DB::raw(" SELECT laureats.nom FROM laureats,traces WHERE laureats.id=traces.laureat_id AND traces.etat_id=$etat
and traces.etat_id=(select etat_id from traces where traces.laureat_id=laureats.id ORDER BY traces.dateTrace desc limit 1)"))
->get();
你刚才问的一切,都在 docs:
我看到您正在 运行宁 SELECT 查询,其中 WHERE 子句带有 AND,另一个查询在 where 子句中。
我给你解释一下:
Select 仅使用 laureats.nom 的查询结果如下:
$nom = DB::table('laureats')->pluck('nom');
使用多个 where:
$nom = DB::table('laureats')->where('votes', '>', 100)->where('votes', '>', 100)->pluck('nom');
您可以 运行 在另一个查询中查询:
->where(function($query)
{
$query->select(DB::raw(1))
->from('traces')
->whereRaw('something = something');
})
这就是它的样子。由于这些都在文档中,您应该自己尝试一下。
大家好,请问我如何编写这个查询:
$laureats=Laureat::select('laureats.*')
->from(DB::raw(" SELECT laureats.nom FROM laureats,traces WHERE laureats.id=traces.laureat_id AND traces.etat_id=$etat
and traces.etat_id=(select etat_id from traces where traces.laureat_id=laureats.id ORDER BY traces.dateTrace desc limit 1)"))
->get();
你刚才问的一切,都在 docs:
我看到您正在 运行宁 SELECT 查询,其中 WHERE 子句带有 AND,另一个查询在 where 子句中。
我给你解释一下:
Select 仅使用 laureats.nom 的查询结果如下:
$nom = DB::table('laureats')->pluck('nom');
使用多个 where:
$nom = DB::table('laureats')->where('votes', '>', 100)->where('votes', '>', 100)->pluck('nom');
您可以 运行 在另一个查询中查询:
->where(function($query)
{
$query->select(DB::raw(1))
->from('traces')
->whereRaw('something = something');
})
这就是它的样子。由于这些都在文档中,您应该自己尝试一下。