如图,mysql,如何用 A sql查询出的某一个字段的所有结果,当作另外一条B sql查询的一个字段?

查看:204
本文介绍了如图,mysql,如何用 A sql查询出的某一个字段的所有结果,当作另外一条B sql查询的一个字段?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题


SELECT a.*FROM questionnaire a;
SELECT  title as xzl_name FROM xzl a JOIN intention_xzl b on a.id= b.xzl_id WHERE b.questionnaire_id='941f69fa430740399ba4ef2506a11957';
SELECT name as service_area FROM area a JOIN service_area  b ON  a.id=b.area_id WHERE b.questionnaire_id='941f69fa430740399ba4ef2506a11957'

如图,让第2张图中所有的结果作为第1张图xzl_name字段里面的内容用顿号区分,第3张图所有的结果作为第1张图service_area字段里面的内容(所有内容都放入service_area这个字段)

这个问题已被关闭,原因:问题质量差 - 问题太水、伸手党

解决方案

补充一下,终于看懂了。。intention_xzl的questionnaire_id对应questionnaire的id对吧?就是要三个sql结果关联到一起嘛,看下面sql:

SELECT 
    aa.*,
    bb.xzl_name,
    cc.service_area
FROM questionnaire aa 
join 
    (SELECT  
        b.questionnaire_id questionnaire_id,
        group_concat(title) xzl_name 
    FROM xzl a 
    JOIN intention_xzl b 
    on a.id= b.xzl_id 
    WHERE 
        b.questionnaire_id='941f69fa430740399ba4ef2506a11957' 
    group by b.questionnaire_id) bb
 on aa.id=bb.questionnaire_id
 join
     (SELECT 
         b.questionnaire_id questionnaire_id,
         group_concat(name) service_area 
     FROM area a 
     JOIN service_area  b 
     ON  a.id=b.area_id 
     WHERE 
         b.questionnaire_id='941f69fa430740399ba4ef2506a11957' 
         group by b.questionnaire_id) cc
 on aa.id=cc.questionnaire_id;

这篇关于如图,mysql,如何用 A sql查询出的某一个字段的所有结果,当作另外一条B sql查询的一个字段?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆