2016-07-11 56 views
0

我怎麼會得到一個MySQL輸出的行數,例如:獲取行號(如Excel)

select * from table 

name  age 
David  12 
Frank  13 

我想要得到的行號,就像這樣:

select *, row_num from table 

row name  age 
1  David  12 
2  Frank  13 

enter image description here

左邊的行號 - 1至7 - 不是數據本身的一部分。

+1

通常有一個主鍵值用於此。我們應該假設沒有ID/PK領域? – Dan

+0

@Dan是的,沒有主鍵,我只是希望它返回結果的行號。 – David542

+2

@丹做http://stackoverflow.com/questions/8509996/is-there-a-way-to-get-the-row-number-in-mysql-like-the-rownum-in-oracle做你的想? – Bryce

回答

1

在mysql中,您必須使用User-Defined Variables

SELECT @rowno := @rowno + 1 AS row_no, * 
FROM table 
CROSS JOIN (SELECT @rowno := 0) t 
-- ORDER BY age