当前位置: 首页 > 知识库问答 >
问题:

如何在PHPLaravel中编写正确的sql查询方式

戚升
2023-03-14

我想从这个表中获取所有数据,因为我正在使用查询:

      $emp = Employee::where('user_id', '=', $user->id)->first();

    $holidays = Holiday::orderBy('holidays.id', 'desc')->take(5)->where('holidays.id', '=', $emp->id)->get();

它没有给我任何结果。我是php新手,有人能帮我解决这个问题吗?

共有1个答案

赏阳嘉
2023-03-14

“雄辩”的方式是在员工模型中建立员工与假期之间的关系:

public function holidays() { 
    return $this->hasMany(Holiday::class);
}

然后在您的假日模型中设置反向:

public function employee() { 
    return $this->belongsTo(Employee::class, 'created_by');
}

请注意,我们必须显式传递外键的名称,因为它不是Laravel所期望的(employee_id)。

然后,您可以加载您的员工:

$emp = Employee::where('user_id', $user->id)->first();

然后访问他们的假期:

$holidays = $emp->holidays;

或:

$lastfiveholidays = $emp->holidays()->take(5);
 类似资料:
  • 问题内容: 假设我要编写以下HQL查询: 将其编写为参数化查询的正确方法是什么,例如 问题答案: 我不确定如何使用位置参数来执行此操作,但是如果可以使用命名参数而不是位置参数,则可以将命名参数放在方括号内,并且可以使用Query接口中的setParameterList方法将值列表绑定到此参数。

  • 我有一个sql查询: 这就产生了: Hibernate:选择this_.pName为y0_,this_.kNum为y1_,count(distinct this_.agentg)为y2_from Test_CPView this_where(低(this_.pName+“~”+this_.kNum)like?或低(this_.pName+“~”+this_.kNum)like?或低(this_.p

  • 问题内容: 我有此查询,它运行良好 从此查询中,我从我的位置(这是我的第一张表)中选择所有3 KM的餐厅。 但是我需要从3Km中的食品接头中选择AVG等级。 该查询也运行完美: 但是我需要添加这两个查询,通过它们我可以选择所有那些食品接头及其等级AVG。 问题答案: 只需放置子查询,您将得到结果:

  • 需要实现sql查询,如: 如何使用QueryDSL编写这样的语句?(我没有使用任何JPA)。任何帮助/提示都非常感谢!

  • 问题内容: 实际上,我有一个SQL查询可以很好地与数据库一起运行。但是,我的问题是我想在查询中编写该查询。 我的SQL查询是 我希望它由hibernate模板执行。 如何将其转换为查询? 问题答案: 如果要使用查询,则下面是hibernate查询的示例,但是在您的情况下,我们需要映射文件以查看实体之间的关联。希望下面的查询对您有所帮助。 要么

  • 我有3个表作为学生数据,包括学生的数据,科目表的数据提供的所有科目和分数,学生获得的每一个科目的分数。通过StudentId标记到StudentData表的表映射,通过SubjectId标记到Subjects表的表映射 我想做的是选择每个科目的最高分数和学生的名字,如下所示 所以我写了一个甲骨文PL / SQL查询如下, 但它只给出了一个结果。请帮助我开发一个查询来获取我的预期结果集。