我正在使用这篇文章中建议的查询https://stackoverflow.com/a/51816820/6822845 列出我的表格内容。这是非常好的工作,我得到了一个列表,每个部分的子部分逗号分隔在另一列中,这样我就可以分解它,并将其转换为一个数组。我的问题是,我的sections表(在上面链接的另一篇文章中提到)有另一个名为“sorder”的列,它保存了显示顺序。我不知道为什么,但我无法将它与列selects一起输出为每次0。
SELECT sections.sorder as sorder ,section_titel as t1,
GROUP_CONCAT(sub_section_titel) as t2
FROM sections
LEFT JOIN sub_sections ON section_id = sId
GROUP BY t1
ORDER by sorder
每次我运行它排序显示为“0”。但不是0。奇怪的是,我可以读取subïsection表中的“iorder”列。但是主表“sections”中的“sorder”列不可访问/每次0。我正在使用mysql:
1条答案
按热度按时间nuypyhwy1#
我创建了一个sqlfiddle,希望它能代表您的数据。在那个例子中,
ORDER BY sorder
很好用。我还包括一个ORDER BY
在GROUP_CONCAT
这样子节标题可以被命令。因此,对于原始查询:输出为
但对于新的查询:
输出为:
注:重新排序
Section Three
以及Section One
还有SubTwo
以及SubOne
基于sorder
以及iorder
.