首页 > 解决方案 > 数据透视表查询

问题描述

我是 Laravel 的新手,我需要一些关于查询的帮助。

我有 3 张桌子:

我为每个人创建了一个有关系的模型(一切都很好......)

现在我需要构建一个查询(使用 Maatwebsite/Excel 在 Excel 中导出)。我需要每条记录都有:

我能够做到,但我的问题是我需要将所有内容集中在一条线上 ...ES:假设我们有 3 根电缆和 2 个功能。在数据库中

电缆:

特征:

Cable_Feature 中的情况是:

现在我需要查询这个结果(1代表行)

标签: laravel

解决方案


没有 Laravel 的查询是这样的:

SELECT code, 
       GROUP_CONCAT(`value`) 
FROM   cable_feature 
       JOIN cables 
         ON cables.id = cable_feature.cable_id 
GROUP  BY cables.code; 

你可以从这里开始使用 Laravel Query Builder 构建它。

请记住,group_concat_max_len如果您的 group_concat 值增长大于限制,您将需要在 MySQL 中设置 alter 变量。前任:SET SESSION group_concat_max_len = 10000;


推荐阅读