Laravel-在同一页面上显示活动和非活动
我有一个包含以下字段的表:Laravel-在同一页面上显示活动和非活动,laravel,Laravel,我有一个包含以下字段的表:name和plan\u status 计划状态可以是0或11处于活动状态,0处于非活动状态。我想显示| name | active | inactive | 我只能运行显示活动和非活动的查询 型号: protected $fillable = [ 'name', 'plan_status' ]; 控制器: $actives = DB::table('users') ->select(DB::raw('count(*) as active'))
name
和plan\u status
计划状态可以是0
或1
<代码>1处于活动状态,0
处于非活动状态。我想显示| name | active | inactive |
我只能运行显示活动和非活动的查询
型号:
protected $fillable = [
'name', 'plan_status'
];
控制器:
$actives = DB::table('users')
->select(DB::raw('count(*) as active'))
->where('plan_status', 1)
我希望查询同时显示活动和非活动名称:
| name | active | inactive |
以下是查询,它将为您提供所需的确切结果
$actives = DB::table('users')
->selectRaw('
name,
IF((plan_status = 1), "Yes", "No") as active,
IF((plan_status = 0), "Yes", "No") as inactive,
IF((plan_status = 2), "Yes", "No") as undefined
')
->get()
试试这个,检查一下。我想这会解决你的问题
已编辑
获取状态信息的计数
$actives = DB::table('users')
->selectRaw('
name,
IF((plan_status = 1), COUNT(*), "0") as active,
IF((plan_status = 0), COUNT(*), "0") as inactive,
IF((plan_status = 2), COUNT(*), "0") as undefined
')
->groupBy('plan_status')
->get()
像这样
尝试两种解决方案。这是一个查询,它将为您提供您想要的确切结果
$actives = DB::table('users')
->selectRaw('
name,
IF((plan_status = 1), "Yes", "No") as active,
IF((plan_status = 0), "Yes", "No") as inactive,
IF((plan_status = 2), "Yes", "No") as undefined
')
->get()
试试这个,检查一下。我想这会解决你的问题
已编辑
获取状态信息的计数
$actives = DB::table('users')
->selectRaw('
name,
IF((plan_status = 1), COUNT(*), "0") as active,
IF((plan_status = 0), COUNT(*), "0") as inactive,
IF((plan_status = 2), COUNT(*), "0") as undefined
')
->groupBy('plan_status')
->get()
像这样
尝试这两种解决方案。使用分组方式尝试这一种
DB::table('users')
->select('name',
DB::raw('IF((plan_status = 1), count(*), 0) as active'),
DB::raw('IF((plan_status = 0), count(*), 0) as inactive'),
)->groupBy('plan_status')->get()
使用“分组方式”尝试此选项
DB::table('users')
->select('name',
DB::raw('IF((plan_status = 1), count(*), 0) as active'),
DB::raw('IF((plan_status = 0), count(*), 0) as inactive'),
)->groupBy('plan_status')->get()
如果你想要全部的话,你不需要where子句。如果一个计划是活动的或非活动的,那就意味着你想要全部。我不明白。您想在一个表中同时显示
活动
和非活动
列的所有项目,还是只想根据项目的计划状态对项目进行计数
?您只需在返回后创建一个新数组,然后执行$actives['inactive']=$actives['active']?假:真;将显示3列。第一列是名称。然后,如果计划状态为1,则第二列将显示为活动,如果计划状态为0,则第二列将显示为非活动。我不想将计划状态的活动和非活动都放在同一列上。我想把它们分开。感谢首先:“如果计划状态为1,则第二列将显示为活动,如果计划状态为0,则第二列将显示为非活动”,然后:“*我不想将计划状态的活动和非活动都放在同一列上。*”——仍然不确定。如果您想要全部的话,您不需要where子句。如果一个计划是活动的或非活动的,那就意味着你想要全部。我不明白。您想在一个表中同时显示活动
和非活动
列的所有项目,还是只想根据项目的计划状态对项目进行计数
?您只需在返回后创建一个新数组,然后执行$actives['inactive']=$actives['active']?假:真;将显示3列。第一列是名称。然后,如果计划状态为1,则第二列将显示为活动,如果计划状态为0,则第二列将显示为非活动。我不想将计划状态的活动和非活动都放在同一列上。我想把它们分开。感谢首先:“如果计划状态为1,则第二列将显示为活动,如果计划状态为0,则第二列将显示为非活动”,然后:“*我不想将计划状态的活动和非活动都放在同一列上。*”——仍然不确定。很抱歉,计划状态有2表示未定义。:活动、非活动、未定义您的意思是在计划状态中有三种类型的值=>0、1、null。对吗?并且您希望在0计划_状态下计算空值。对吗?不,我的计划状态=>0,1,2。0处于非活动状态,1处于活动状态,2未定义。它将每个列作为一列显示在同一个表上,如果我想删除属性名,并且只有一行和两列:active | InactiveVeam抱歉,plan_status有2个表示未定义。注意:active,inactive,Undefinedy您的意思是在plan_status
=>0,1,null中有三种类型的值。对吗?并且您希望在0计划_状态下计算空值。对吗?不,我的计划状态=>0,1,2。0处于非活动状态,1处于活动状态,2未定义。它会将每个列作为一列显示在同一个表上,如果我想删除属性名称,并且只有一行和两列:活动|不活动我需要计算每个计划状态我需要计算每个计划状态