是否可以为在联合语句的两个部分中使用的内部选择语句(SELECT定义的数据)提供别名:
//Bad result:
return Product::whereIn('id', $ids)->whereHas('translations', function ($query) use ($findTextWildcards) {
foreach ($findTextWildcards as $value) {
$query->orWhere('name', 'like', "%{$value}%");
}
});
//good result but difficult query
return Product::whereIn('id', $ids)->where(function ($query) use ($findTextWildcards) {
foreach ($findTextWildcards as $value) {
$query->whereHas('translations', function ($q) use ($value){
$q->where('name', 'like', "%{$value}%");
});
}
});
答案 0 :(得分:1)
简短的回答:否(至少要等到8.0或10.2中的CTE为止)
长答案:您太努力了:
jq '.x[] | select(.name == "Christmas").id'