是否可以将Array的值存储为一个新变量?

rai*_*sa_ 1 php mysql arrays

我在数据库中有多个不同的名称,日期和菜单的样本数据...我需要使用相同的名称和日期继续数据,但每个数据都有不同的菜单...

数据库

在此输入图像描述

问题是我需要存储与新变量相同的名称和日期的所有菜单,因为我需要在web中调用它以进行表视图,并且表格需要如下所示:

在此输入图像描述

我已经使用数组存储每个相同名称和日期的数据菜单,因此菜单如下所示:

在此输入图像描述

在这部分之后,我真的很困惑如何继续接近,

我怎么得到输出 - >糖果蛋糕奶酪,所以我可以在表中调用它(?)

我想我似乎不能在我的查询中使用concat_ws,因为值来自数组的同一个字段,或者是否有另一个解决方案所以我可以得到我需要的输出表?谢谢 :)

Pau*_*tas 5

您可能正在寻找MySQL GROUP_CONCAT()聚合函数:

  SELECT Name, Date, GROUP_CONCAT(Menu) AS Menu
    FROM Table
GROUP BY Name, Date
Run Code Online (Sandbox Code Playgroud)

这将为您的数据提供:

|--------|------------|-------------------|
| Name   | Date       | Menu              |
|--------|------------|-------------------|
| Sylvie | 2001-01-01 | Candy,Cake,Cheese |
| Sylvie | 2001-02-01 | Milk,Tea          |
|--------|------------|-------------------|

从那里你只需要使用PHP explode()函数将每个菜单记录作为一个数组.