我已经研究过这几天了,我似乎无法为我找到合适的查询。
表格
1。项目
2。注释
通缉结果:
array =>
project1 =>
Notes1
Notes2
Notes3
project2 =>
Notes1
Notes2
project3 =>
….........
我正在努力创建一个单独的查询来填充我想要的结果 - 从项目中选择所有字段,并为每个id创建另一个数组,以保存与notes.id匹配的所有结果。专案编号。
答案 0 :(得分:2)
您将需要使用您使用的任何语言来为您组织阵列。
您要使用的SQL查询是:
SELECT projects.*, notes.noteid, notes.note
FROM projects LEFT JOIN notes ON
projects.id = notes.projectid
LIMIT 250;
使用限制,这样您就不会拥有庞大的数据集。您可以将限制设置为适合您需要的限制,或者如果您确定不需要了解数据集大小,则可以省略它。
这将返回如下数据集:
+----------+-------------+----------+----------+----------+
| id | projectname | date | noteid | note |
+----------+-------------+----------+----------+----------+
| 1 | Project1 | 1/1/2000 | 1 | Notes1 |
| 1 | Project1 | 1/2/2000 | 2 | Notes2 |
| 1 | Project1 | 1/3/2000 | 3 | Notes3 |
| 2 | Project2 | 1/4/2000 | 4 | Notes1 |
| 2 | Project2 | 1/5/2000 | 5 | Notes2 |
| 3 | Project3 | 1/6/2000 | NULL | NULL |
+----------+-------------+----------+----------+----------+
我使用LEFT JOIN
作为项目尚未提供任何备注的实例。您可以看到Project3
的结果。然后由您的编程语言来组织您的数据集。如果不了解您的语言的限制,我不想过多地理解如何组织这个。