gpt4 book ai didi

mysql - 您如何从所有列中获取列是否是表的主键?

转载 作者:行者123 更新时间:2023-11-29 02:19:55 25 4
gpt4 key购买 nike

我正在使用 mySQL 中的以下查询获取我的数据库中列出的所有表的所有列

SELECT * FROM information_schema.columns
WHERE table_schema = DATABASE()
ORDER BY table_name, ordinal_position

我想获取所有列,无论它是否是主键?对于在此查询中显示为 y 的主键列和显示为 n 的非主键列。我怎样才能通过这个查询实现这一目标?

最佳答案

您可以使用 COLUMN_KEY 列和 CASE WHEN:

SELECT column_name, CASE WHEN COLUMN_KEY = 'PRI' THEN 'y' ELSE 'n' END AS result
FROM information_schema.columns
WHERE table_schema = DATABASE()
AND `table_name` = 'tab' -- table name
ORDER BY `table_name`, ordinal_position

SqlFiddleDemo

关于mysql - 您如何从所有列中获取列是否是表的主键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33543141/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com