CNode

求留言板单表内联查询的sql

问答
Xxiaoyao316发布于7 年前最后回复7 年前7 回复5250 浏览0 收藏

表结构如下: table.png 希望查询返回的数据结构是

	data: [
		{
 			id: 1,
			content: '第一条留言',
			create_time: '2019-09-15 14:31:10',
			children: [
				{
					id: 2,
			   	 	content: '回复第一条留言',
			    	create_time: '2019-09-17 14:31:10'
				}
			]
		},
		{
			id: 3,
			content: '第二条留言',
			create_time: '2019-09-15 14:31:10',
			children: [
				{
					id: 4,
			   	 	content: '回复第一条留言',
			    	create_time: '2019-09-18 14:31:10'
				},
				{
 					id: 5,
			   	 	content: '回复第一条留言',
			    	create_time: '2019-09-19 14:31:10'
				}
			]
		}
	]
查看回复

回复 (7)

N
nnliang#1·7 年前
if(mongodb)
 // $unwind 了解一下
X
xiaoyao316#2·7 年前
引用 nnliang

@nnliang 可惜,我用的mysql

J
JianmingXia#3·7 年前

个人不建议这种数据使用内联的方式,效率会比较低;取对应的数据在应用层做就行。不过还是留下一个解决方案:

select * from comment as A left join comment as B on A.id = B.parent_id where A.parent_id is null

源数据: image.png

结果数据: image.png

C
cnvp#4·7 年前

获取到所有数据后,自己可以用js处理下啊

X
xiaoyao316#6·7 年前
引用 cnvp获取到所有数据后,自己可以用js处理下啊

@cnvp 目前就是js处理的,但还是想找找sql的实现

参与回复
登录后即可参与回复。登录