查询构建器对象在之前构建的对象中看不到别名 (Laravel)
Query builder object doesn't see aliases in previously built object (Laravel)
这是我的第一个查询:
$base=\DB::table('user')->select('firstname as name');
然后我想访问第二个查询中的别名列:
$base->select('name');
但我看到错误。不过,我可以从 table 用户访问所有列。有没有办法更改它以便我可以在第二个查询中使用别名?
完整代码在这里:
$base=\DB::table('user')->select('firstname as name');
var_dump($base->get());//Everything is ok, I see the aliases
var_dump($base->select('name')->get);//I see nothing, there's no column 'name'
更多代码在这里:
function getPerson(){
return \DB::table('user')->select('firstname as name', 'age');
}
function getPet(){
return \DB::table('pet')->select('petname as name', 'age');
}
function getNames($var){
return $var->select('name')->where('age', 10)->get();
}
$base = getNames(getPerson());//empty here
$base = getNames(getPet());//empty here
主要问题是我有很多不同的查询,我想给它们加上别名,然后用另一个查询为图表准备数据
这是我的第一个查询:
$base=\DB::table('user')->select('firstname as name');
然后我想访问第二个查询中的别名列:
$base->select('name');
但我看到错误。不过,我可以从 table 用户访问所有列。有没有办法更改它以便我可以在第二个查询中使用别名?
完整代码在这里:
$base=\DB::table('user')->select('firstname as name');
var_dump($base->get());//Everything is ok, I see the aliases
var_dump($base->select('name')->get);//I see nothing, there's no column 'name'
更多代码在这里:
function getPerson(){
return \DB::table('user')->select('firstname as name', 'age');
}
function getPet(){
return \DB::table('pet')->select('petname as name', 'age');
}
function getNames($var){
return $var->select('name')->where('age', 10)->get();
}
$base = getNames(getPerson());//empty here
$base = getNames(getPet());//empty here
主要问题是我有很多不同的查询,我想给它们加上别名,然后用另一个查询为图表准备数据