数据库结构如图
我希望查询出来的结果是:
学校名称,学校代码,该校地址(即A标号5到A标号10的D列值合并),该校邮编(即A标号24的D列值)
我使用的语句是:
SELECT DISTINCT organization_name,organization_no
,(SELECT GROUP_CONCAT(D, ',') FROM [教基1001] as b where b.A > 4 AND b.A < 11 AND a.id = b.id) as address
,(SELECT D FROM [教基1001] as c where c.A = 24 AND a.id = c.id) as zipcode
FROM [教基1001] as a
ORDER BY gather_organization_no, organization_no;
运行的结果如图
有三个问题,第一是地址的多列没有合并,第二是查询出来的地址和邮编等也没在一行,第三是还有一行都为null的。。
请问这个语句应该怎么写,我这条语句问题出在哪?
a.id = b.id 这个条件,换成 a.organization_no = b.organization_no,下面那个a.id = c.id 换成 a.organization_no = c.organization_no就可以输出你想要的结果了。