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;