代码之家  ›  专栏  ›  技术社区  ›  Joh

mysql查询中如何在一个变量中获取多列

  •  0
  • Joh  · 技术社区  · 14 年前

    我有桌子

    Articles -------- id,name,type_id
    Type--------------id,name
    article_type ----------article_id , type_id
    

    我正在使用此查询

    select A.name from types A 
    inner join article_type B on ( B.type_id = A.id and article_id = 10)
    

    Article name ------------types
    milk--------------------dairy , persishable , costly
    
    2 回复  |  直到 14 年前
        1
  •  3
  •   OMG Ponies    14 年前

    使用MySQL的 GROUP_CONCAT function :

      SELECT a.name AS article_name,
             GROUP_CONCAT(t.name) AS types
        FROM ARTICLES a
        JOIN ARTICLE_TYPE at ON at.article_id = a.id
        JOIN TYPE t ON t.id = at.type_id
    GROUP BY a.name
    
        2
  •  0
  •   ndp    14 年前

    如果我理解正确,诀窍是 CONCAT ,如 SELECT CONCAT(A.name, ',',B.type) AS synth FROM...