Sql 如何在Laravel中将所有具有公共标题的行组合在一起
是否可以将实际输出的所有行以非常有组织的JSON格式与一个SQL查询组合在一起 例如,如果我有一个包含列的表:lastname、firstname、address和phone number,我想根据这些行的姓氏的首字母将它们组合在一起,这样我就有了一些东西 { { 信:“A”, 行:{ { 姓氏:“安法尔”, 名字:“彼得”, 地址:'Street city state country', 电话号码:“电话号码” }, }Sql 如何在Laravel中将所有具有公共标题的行组合在一起,sql,laravel,Sql,Laravel,是否可以将实际输出的所有行以非常有组织的JSON格式与一个SQL查询组合在一起 例如,如果我有一个包含列的表:lastname、firstname、address和phone number,我想根据这些行的姓氏的首字母将它们组合在一起,这样我就有了一些东西 { { 信:“A”, 行:{ { 姓氏:“安法尔”, 名字:“彼得”, 地址:'Street city state country', 电话号码:“电话号码” }, } 我正在使用laravel,我想知道是否有一种方法可以实现类似的功能您可以
我正在使用laravel,我想知道是否有一种方法可以实现类似的功能您可以使用集合的
groupBy()
函数
在查询中添加字母列:
$q = User::query()
->selectRaw('LEFT(lastname,1) AS letter, lastname')
->get();
然后使用groupBy('letter')
对列表进行分组
$q->groupBy('letter')
不使用SQL,但是您可以利用Laravel集合类。
$q->groupBy('letter')