谢谢大家:)我有 4 个表项目、要点、步骤和评论;
项目 ID 姓名 描述
积分 ID 姓名 描述 项目ID
步骤 ID 描述 点_id
评论 ID 描述 步骤_id
我写了这样的查询
SELECT * FROM Project
INNER JOIN points ON points.project_id=Project.id
INNER JOIN steps ON steps.points_id=points.id
INNER JOIN comments ON comments.steps_id=steps.id
WHERE Project.id=333
一个项目有很多要点、要点、有很多步骤、有很多评论 像这样的事情,我想在一个查询中获得所有结果,否则需要很长时间才能获得结果:((我不知道我能做什么:((
是这样的
**Project**
id :1,
name :"get",
**points**
id :1,
name :"points1", ///project "get"'s point
project_id : 1,
id :2,
name :"points2", ///project "get"'s point
project_id : 1,
**steps**
id :1,
name :"steps1", ///project "points2"'s step
points_id : 2,
id :2,
name :"steps2",///project "points2"'s step
points_id : 2,
**comments**
id :1,
name :"something", ///project "steps1"'s comment
steps_id : 1,
id :2,
name :"something",///project "steps2"'s comment
steps_id : 2,
我想回显项目,它是一个查询中的点、点的步骤和步骤的注释,或者是否有另一种方法来解决这个问题?感谢您的支持:))))))
最佳答案
首先,您的 sql 语法无效。您错过了关键字 FROM
。应该是:
SELECT *
FROM Table1
INNER JOIN table2 ON table2.table1_id= table1.id
INNER JOIN table3 ON table3.table2_id= table2.id
INNER JOIN table4 ON table4.table3_id= table3.id
WHERE table1.ID = 333
但我需要你想要的结果。您需要指定数据库架构和虚拟记录才能完成查询。
关于mysql 与不同表的内连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10786000/