3

How can I get a column name by its index using sql query in command line?

I expect something like show columns from my_table where col_index = 2;

I found many answers about how to show all columns but there's no answer on how to get exact column name by its position in the table.

jww
  • 90,984
  • 81
  • 374
  • 818
Maxim Gotovchits
  • 709
  • 2
  • 10
  • 21

2 Answers2

5

use table information_schema.columns

select column_name 
from information_schema.columns 
where table_name = 'my_table_name' and ordinal_position = 2;
Drew
  • 24,556
  • 10
  • 41
  • 75
Fujiao Liu
  • 2,145
  • 1
  • 23
  • 27
0

You can select from INFORMATION_SCHEMA.COLUMNS and use limit

SELECT COLUMN_NAME 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_SCHEMA = 'my_database' AND TABLE_NAME = 'my_table'
limit 1, 1;
Lajos Arpad
  • 53,986
  • 28
  • 88
  • 159