将 table 的行枚举到 MySQL 的新列中
enumerate rows of a table into a new column in MySQL
我有一个table。我想 select 添加一个可以作为各种索引的列。
我有这个 table, table1
:
col 1 col2 col3
a b c
d e f
g h i
我想做:
CREATE TEMPORARY TABLE temp1 AS
SELECT (some way to create a sequence from 1 to the height of the table) AS `seq`
,col1
,col2
,col3
FROM table1;
并得到
seq col 1 col2 col3
1 a b c
2 d e f
3 g h i
我一直在谷歌上搜索,似乎找不到任何有用的东西。抱歉,我也是 MySQL 的初学者。
我认为这些答案应该对您有所帮助:
从此处复制您的 table(临时创建除外):
Duplicating a MySQL table, indexes and data
然后按照此处所述编写程序:
How can I loop through all rows of a table? (MySQL)
如果要使用临时 table,可以复制 table1
的 table 定义,但添加一个自动增量列。
DROP TEMPORARY TABLE IF EXISTS temp1;
CREATE TEMPORARY TABLE temp1 (
seq INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
col1 VARCHAR(255),
col2 VARCHAR(255),
col3 VARCHAR(255)
) AS
SELECT NULL seq
,col1
,col2
,col3
FROM table1
;
SELECT * FROM temp1;
我有一个table。我想 select 添加一个可以作为各种索引的列。
我有这个 table, table1
:
col 1 col2 col3
a b c
d e f
g h i
我想做:
CREATE TEMPORARY TABLE temp1 AS
SELECT (some way to create a sequence from 1 to the height of the table) AS `seq`
,col1
,col2
,col3
FROM table1;
并得到
seq col 1 col2 col3
1 a b c
2 d e f
3 g h i
我一直在谷歌上搜索,似乎找不到任何有用的东西。抱歉,我也是 MySQL 的初学者。
我认为这些答案应该对您有所帮助:
从此处复制您的 table(临时创建除外): Duplicating a MySQL table, indexes and data
然后按照此处所述编写程序: How can I loop through all rows of a table? (MySQL)
如果要使用临时 table,可以复制 table1
的 table 定义,但添加一个自动增量列。
DROP TEMPORARY TABLE IF EXISTS temp1;
CREATE TEMPORARY TABLE temp1 (
seq INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
col1 VARCHAR(255),
col2 VARCHAR(255),
col3 VARCHAR(255)
) AS
SELECT NULL seq
,col1
,col2
,col3
FROM table1
;
SELECT * FROM temp1;