我有两个具有这些结构的表:
文章:article_id,文本 标签:tag_id、article_id、文本
如何通过一次查询选择所有文章和所有相关标签?据我所知,MySQL 只能返回一个二维数组,因此我可以采用的一种解决方案是将所有标签连接到文章选择结果的一列中。但是如何呢?
最佳答案
关系数据以元组的形式组织。元组具有 n 维,并且可以使用单个关系(表)轻松描述从 m 维向量到标量或 k 维值的函数映射。 (n = m + k)
如果您需要/建议的只是表示层,那么您可以按照 Eric Hogue 的建议进行操作,但如果这是在某个过程的中间或另一个过程的开始,那么 Fabrik 的建议是正确的方法。
GROUP_CONCAT 使数据成为非关系数据,因此更难用作 SQL 后续处理的基础。因此,此命令的目的是在您的客户端层无法为您完成输出时使输出变得个性化。不要试图根据演示问题来建模您的核心关系。
关于php - 在MySQL上模拟多维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5377905/