2016-03-26 5 views
1

私はテーブルを持っています。私はそれに並べ替えのインデックスとして役立つことができる列を選択したいと思います。テーブルの行をMySQLの新しい列に列挙する

私は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 

を取得します」 t有用な何かに出くわすようだ。申し訳ありませんが、私はMySQLの初心者です。

答えて

1

場合あなたはテンポラリテーブルを使用したい場合は、table1のテーブル定義をコピーすることができますが、オートインクリメントカラムを追加します。

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; 

fiddle

+0

これは素晴らしいアイデアです。私はそのようなことは考えていませんでした。 –

関連する問題