Mysql 仅在一行中返回sql的结果

Mysql 仅在一行中返回sql的结果,mysql,Mysql,我正在使用此查询获取users表中所有可能的成员: SELECT u.id as id , u.name as name, u.age as age FROM users u 显然,结果是: id name age ----------------------- 21 name1 age1 22 name2 age2 23 name3 age3 24

我正在使用此查询获取
users
表中所有可能的成员:

      SELECT u.id as id , 
             u.name as name, 
             u.age as age 
      FROM users u
显然,结果是:

 id     name   age  
-----------------------
 21     name1   age1
 22     name2   age2
 23     name3   age3
 24     name4   age4
我想要的是得到以下最终结果:

 id_1     name_1   age_1    id_2     name_2   age_2    id_3    name_3   age_3    id_4     name_4   age_4 
--------------------------------------------------------------------------------------------------------

   21      name1    age1     22      name2    age2      23      name3    age3      24      name4    age4

正如您在最终结果中看到的,我希望返回一行。可能吗?如果可能的话,我能问你关于如何实现它的任何建议吗?任何答案都将不胜感激

该要求在数据操作中看起来不实用。但如果这是你想要的格式化方法

SELECT 
    GROUP_CONCAT(if(id = 21, id, NULL)) AS id_1,
    GROUP_CONCAT(if(id = 21, name, NULL)) AS name_1,
    GROUP_CONCAT(if(id = 21, age, NULL)) AS age_1,
    GROUP_CONCAT(if(id = 22, id, NULL)) AS id_2,
    GROUP_CONCAT(if(id = 22, name, NULL)) AS name_2,
    GROUP_CONCAT(if(id = 22, age, NULL)) AS age_2,
    GROUP_CONCAT(if(id = 23, id, NULL)) AS id_3,
    GROUP_CONCAT(if(id = 23, name, NULL)) AS name_3,
    GROUP_CONCAT(if(id = 23, age, NULL)) AS age_3,
    GROUP_CONCAT(if(id = 24, id, NULL)) AS id_4,
    GROUP_CONCAT(if(id = 24, name, NULL)) AS name_4,
    GROUP_CONCAT(if(id = 214, age, NULL)) AS age_5
FROM users
GROUP BY id

很确定这是一个复制品,谢谢你给我这个主意