MYSQL-按顺序确定表主键

MYSQL-按顺序确定表主键,mysql,Mysql,我正在寻找一个查询,它按照创建数据库的相同顺序为我提供数据库中所有表的主键,例如: 创建表格a_天线端口 主键(dateday,neid,cn,srn,sn,pn) 我需要按相同顺序将字段作为输出: dateday,neid,cn,srn,sn,pn 我已经试过了: SELECT GROUP_CONCAT(COLUMN_NAME), TABLE_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_SCHEMA = schema

我正在寻找一个查询,它按照创建数据库的相同顺序为我提供数据库中所有表的主键,例如:

创建表格
a_天线端口

主键(
dateday
neid
cn
srn
sn
pn

我需要按相同顺序将字段作为输出:
dateday
neid
cn
srn
sn
pn

我已经试过了:

SELECT GROUP_CONCAT(COLUMN_NAME), TABLE_NAME
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
  TABLE_SCHEMA = schema()
  AND CONSTRAINT_NAME='PRIMARY'
GROUP BY TABLE_NAME;

您的查询应该已经可以工作了(事实上,它确实可以。测试过)。要确保列的顺序正确,唯一可以改进的是按组_concat()中的顺序位置排序


您的查询应该已经可以工作了(事实上,它确实可以。测试过)。要确保列的顺序正确,唯一可以改进的是按组_concat()中的顺序位置排序

SELECT GROUP_CONCAT(COLUMN_NAME ORDER BY ORDINAL_POSITION), TABLE_NAME
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
  TABLE_SCHEMA = schema()
  AND CONSTRAINT_NAME='PRIMARY'
GROUP BY TABLE_NAME;