coolicer
V2EX  ›  问与答

mysql 如何合并结果?

  •  
  •   coolicer · Mar 24, 2014 · 2379 views
    This topic created in 4441 days ago, the information mentioned may be changed or developed.
    name type
    小李 2
    小李 3
    小李 4
    mx 2
    mx 4

    能不能返回
    name type
    小李 2,3,4
    mx 2,4
    6 replies    1970-01-01 08:00:00 +08:00
    ivanlw
        1
    ivanlw  
       Mar 24, 2014 via iPhone
    这个是用SQL语句获得结果集之后,你需要用编程语言处理的事情了(把2 3 4 append到lists或者push_back到vector),因为把234逗号隔开放到数据库里面是不符合范式的,这也是俗称的denormalised database.
    coolicer
        2
    coolicer  
    OP
       Mar 24, 2014
    @ivanlw 或者是[2,3,4]
    coolicer
        3
    coolicer  
    OP
       Mar 24, 2014
    @ivanlw
    如果我直接查表,返回
    小李 2
    小李 3
    小李 4
    mx 2
    mx 4
    这样的json,我不知道怎么得到
    小李 [2,3,4]
    mx [2,4]
    这样的json
    patosky
        4
    patosky  
       Mar 24, 2014   ❤️ 1
    select name, GROUP_CONCAT(type) as type from table_name group by name
    不知道这样行不行
    @coolicer
    coolicer
        5
    coolicer  
    OP
       Mar 24, 2014
    @patosky 可以。
    plprapper
        6
    plprapper  
       Mar 24, 2014
    cancat group by
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5169 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 08:33 · PVG 16:33 · LAX 01:33 · JFK 04:33
    ♥ Do have faith in what you're doing.