如何通過命令行中的sql查詢使用索引獲取列名?MySQL。如何通過索引獲取列名?
我希望像show columns from my_table where col_index = 2;
我發現有關如何顯示所有列,但有關於如何通過其在表中的位置得到確切的列名沒有回答許多答案。
如何通過命令行中的sql查詢使用索引獲取列名?MySQL。如何通過索引獲取列名?
我希望像show columns from my_table where col_index = 2;
我發現有關如何顯示所有列,但有關於如何通過其在表中的位置得到確切的列名沒有回答許多答案。
使用表information_schema.columns
select column_name
from information_schema.columns
where table_name = 'my_table_name' and ordinal_position = 2;
Thx,那工作:) –
高興它的工作原理:-) –
警告:如果您的數據庫包含多個架構,並且每個可以包含相同的表名稱上面將返回多個行。您可以細化查詢:'... where table_name ='my_table_name'and table_schema ='my_schema_name'and ordinal_position = 2' – JonP
您可以從INFORMATION_SCHEMA.COLUMNS
選擇和使用limit
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'my_database' AND TABLE_NAME = 'my_table'
limit 1, 1;
你的意思COLUMNS.ORDINAL_POSITION? – scaisEdge
@scaisEdge,因爲它代表列位置,然後是:) –
@Martin它不是重複的。仔細比較問題。 –