我需要在逆序表结构中选择记录机智列。 例如, 如果我的表格结构是这样的
class name rank
------ ---------- ------
A Nija 2
D cruz 3
B Antony 4
C silverster 5
A febin 1
表示我希望结果为
rank name class
------ ---------- ------
2 Nija A
3 cruz D
4 Antony B
5 silverster C
1 febin A
你可以说选择排名,名称,类等列。但My Table列会动态增加。如果我的表包含任意数量的列但是结果应该与表结构相反,我想要结果。这里我只选择所有列。
答案 0 :(得分:1)
试试这个:
SET @myval=(select group_concat(COLUMN_NAME)from (
SELECT ORDINAL_POSITION, COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Table1'
order by ORDINAL_POSITION desc) a);
SET @strsql=CONCAT('select ',@myval,' from Table1');
PREPARE stmt FROM @strsql;
EXECUTE stmt;
答案 1 :(得分:0)
你为什么不这么做?
SELECT rank, name, class FROM table_name;