[英]How to get comma separated values from a table in Laravel
这是我的类别表 :
id | name
1 a
2 b
3 c
4 d
我需要以逗号分隔的方式获取值1和2 ,即a,b 。
我尝试过这样的事情:
$ids = array('0'=>1,'1'=>2);
\DB::select('SELECT group_concat(name) as name from category where id = ?', ($ids));
但是它总是返回第一个值(即a )
我需要这样的结果值: a,b 。
如何使用普通查询或Laravel执行此操作?
谢谢。
您想要的是一种可以通过使用GROUP_CONCAT
来实现的连接,例如:
SELECT GROUP_CONCAT(name) FROM category where id IN(1,2)
说明:在此处GROUP_CONCAT(name)
concat名称为name1,name2 ...,用于匹配WHERE
条件
使用简单的concat尝试一下。 您最多可以合并用逗号分隔的列。
查询- select concat(id,",",name) as name from category where id = ?
$data = \DB::table("articles")
->select("title")
->whereRaw("find_in_set('find value',colum_name)")
->get();
POST或GET数据字段user_id = 1,2,3;
$user_array = explode(',',Input::get('user_id')); OR $user_array = explode(',',Input::POST('user_id'));
$all_user = User::WhereIn('user_id',$user_array)->get();
获取所有具有用户ID 1,2和3的用户。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.