Php SQL如何跳过列上的重复值
所以,根据stackoverflow社区的一些人给我的提示,我创建了这个“数据库”来保存我的菜肴及其配料。我唯一的问题是,我不想看到不必要的重复的名字和ID,我想知道是否有任何方法可以避免它。下面是一个截图,代码如下。谢谢 额外数据询问:我使用的是MySQL,预期的输出类似于smth 身份证件 名称 成分 1. 鸡饭 米饭 鸡 2. 鸡蛋香蕉饭 米饭 鸡蛋 香蕉Php SQL如何跳过列上的重复值,php,mysql,sql,database,Php,Mysql,Sql,Database,所以,根据stackoverflow社区的一些人给我的提示,我创建了这个“数据库”来保存我的菜肴及其配料。我唯一的问题是,我不想看到不必要的重复的名字和ID,我想知道是否有任何方法可以避免它。下面是一个截图,代码如下。谢谢 额外数据询问:我使用的是MySQL,预期的输出类似于smth 身份证件 名称 成分 1. 鸡饭 米饭 鸡 2. 鸡蛋香蕉饭 米饭 鸡蛋 香蕉 您需要决定如何在结果中查看成分。 一种方法是使用group by和p.id或p.name并使用group\u concat将成分合并
您需要决定如何在结果中查看
成分。
一种方法是使用group by
和p.id
或p.name
并使用group\u concat
将成分合并到一列中。看
然后你会看到:
2 | Rice with bananas and eggs | Rice, Bananas, Eggs
1 | Rice with chicken | Rice, Chicken
今天的提示:切换到现代的显式JOIN
语法。更容易写(没有错误),更容易阅读和维护,如果需要,更容易转换为外部连接!这里的大多数人希望示例表数据和预期结果是格式化文本,而不是图像。@jarlh Ey,谢谢!这是我在线学习PHP和SQLI的下一步,我会把这一步和上一步一样!请提及您正在使用的DBMS,即Oracle、MSSQL等,并发布您的预期输出。知道吗?这是个好主意!这正是我想要的,谢谢你,我的朋友:DGlad来帮忙。。。
SELECT p.id,p.name, GROUP_CONCAT(i.ingredientes)
FROM platos p, ingredientes_para_platos i
WHERE p.id = i.plato_id GROUP BY p.id;
2 | Rice with bananas and eggs | Rice, Bananas, Eggs
1 | Rice with chicken | Rice, Chicken