Laravel-在一个结果中查询2行条件
我需要帮助来进行查询以获取ID,其中特定月份的值介于开始日期和结束日期之间 表格格式是(我不能更改,这不是我的): id |属性| id |值Laravel-在一个结果中查询2行条件,laravel,eloquent,Laravel,Eloquent,我需要帮助来进行查询以获取ID,其中特定月份的值介于开始日期和结束日期之间 表格格式是(我不能更改,这不是我的): id |属性| id |值 1 | 24 |“2016-03-01” 1 | 25 |“2020-03-01” 24=开始 25=结束 我试试这个: Model::select('id') ->whereIn('id', $Ids) // Condition A (Since) ->where(function ($condit
1 | 24 |“2016-03-01”
1 | 25 |“2020-03-01”
- 24=开始
- 25=结束
Model::select('id')
->whereIn('id', $Ids)
// Condition A (Since)
->where(function ($conditionA) use ($date) {
$conditionA->where('attribute_id', 24)
->where(function ($q) use ($date) {
$q->where('value', '<=', $date)->orWhereNull('value');
})
})
// Condition B (Until)
->where(function ($conditionB) use ($date) {
$conditionB->where('attribute_id', 25)
->where(function ($q) use ($date) {
$q->where('value', '>=', $date)->orWhereNull('value');
})
})
->groupBy('id')
->get()
->pluck('id');
同时满足开始和结束条件的ID
当我只使用其中一种条件时,它就起作用了
但一起工作是不行的
谢谢你的时间
$result = [1, 3, 5...];