MySQL select column name as field

后端 未结 2 1871
囚心锁ツ
囚心锁ツ 2021-01-05 01:06

I have a mysql table that looks something like this:

id | col_1 | col_2 | col_3
---|-------|-------|------
1  | 2     | 34    | 64
2  | 6     | 53    | 23
         


        
2条回答
  •  南笙
    南笙 (楼主)
    2021-01-05 01:20

    You could do it like this, this will return to you 2 comma separated first one of columns second of values, which you can explode and merge into KEY/VALUE arrays in PHP.

    SELECT 
        GROUP_CONCAT(COLUMN_NAME) AS _columns,
        (SELECT 
                GROUP_CONCAT(columnName, ',', columnName)
            FROM table_name
            WHERE id = 1)
    FROM
        information_schema.columns
    WHERE
        table_name = 'table_name'
            AND COLUMN_NAME IN ('columnName' , 'columnName');       
    

提交回复
热议问题