Php 在SQL中显示组合表
假设我有一个MySQL表,如下所示:Php 在SQL中显示组合表,php,mysql,sql,Php,Mysql,Sql,假设我有一个MySQL表,如下所示: BookTitle Chapter DateAdded Book1 3 2012-12-15 Book1 2 2012-12-16 Book1 1 2012-12-15 Book2 2 2012-12-16 Book2 2 Book1 2,3,1 我想在HTML中显示它,这
BookTitle Chapter DateAdded
Book1 3 2012-12-15
Book1 2 2012-12-16
Book1 1 2012-12-15
Book2 2 2012-12-16
Book2 2
Book1 2,3,1
我想在HTML中显示它,这样它可以如下所示:
BookTitle Chapter DateAdded
Book1 3 2012-12-15
Book1 2 2012-12-16
Book1 1 2012-12-15
Book2 2 2012-12-16
Book2 2
Book1 2,3,1
基本上我想摆脱书名,如果存在的话!把所有的章节组合在一起,按日期排序
我想用
分组,但是我所有的实验都没有成功。请给我一个解决方案或建议。我可以使用PHP和MySQL,我目前正在这个项目上使用Smarty模板。实际上,您可以在MySQL
中执行此操作。使用GROUP\u CONCAT
功能
SELECT BookTitle, GROUP_CONCAT(Chapter) ChapterList
FROM tableName
GROUP BY BookTitle
其他来源
实际上,您可以在MySQL中执行此操作。使用GROUP\u CONCAT
功能
SELECT BookTitle, GROUP_CONCAT(Chapter) ChapterList
FROM tableName
GROUP BY BookTitle
其他来源
如果我想对“章节结果”进行限制,使其只能显示最近的两个章节,该怎么办。我尝试了GROUP\u CONCAT(按日期添加说明的章节顺序,章节说明限制为0,2)
但它不起作用@shnisakaGROUP_CONCAT
不接受限制
参数。据我所知,您必须使用字符串操作函数(在MySQL查询或PHP中)来获取从字符串开头到第二个逗号的文本。@user113215是正确的shnisaka。另一种方法是修改查询,但您需要阅读这里的一些要点:如果我想对“章节结果”进行限制,使其只能显示最近的两个章节,该怎么办。我尝试了GROUP\u CONCAT(按日期添加说明的章节顺序,章节说明限制为0,2)
但它不起作用@shnisakaGROUP_CONCAT
不接受限制
参数。据我所知,您必须使用字符串操作函数(在MySQL查询或PHP中)来获取从字符串开头到第二个逗号的文本。@user113215是正确的shnisaka。另一种方法是修改查询,但您需要阅读以下要点: