我有一张这样的表:
TABLE
COLUMN1
COLUMN2
COLUMN3
我需要知道如何通过位置获取列名称:
SELECT NAME
FROM TABLE
WHERE POSITION = 2;
结果:“COLUMN2”
答案 0 :(得分:1)
如果您有权从information_schema
数据库中读取数据,则可以执行以下操作:
SELECT COLUMN_NAME
FROM information_schema.`COLUMNS`
WHERE TABLE_NAME = 'TABLE'
AND ORDINAL_POSITION = 2;
如前所述in comments,它不是一个好的数据库管理,你在某个地方出错了。
答案 1 :(得分:0)
你可以阅读COLUMNS.ORDINAL_POSITION
,但这听起来像是一场等待发生的灾难。
您可以(并且始终应该!)引用列名,例如SELECT colname
。这将处理表名为Condition或SELECT
。
编辑 - 这是一个非常邪恶的事情,我不会。