在 mysql 中,我們經常需要使用 SELECT 查詢來獲取指定數據表內的全部或部分數據。當數據表沒有提供自增長 ID 的時候,我們可以采用手工方式為每一行數據指定一個 ID 列,以方便后續的數據管理。下面我們來介紹如何在 mysql 查詢時增添自增 ID。
-- 創建測試數據表 CREATE TABLE test( name VARCHAR(255), age INT, id INT(11) ); -- 為 id 列增添自增 ID ALTER TABLE test MODIFY COLUMN id INT(11) AUTO_INCREMENT PRIMARY KEY; -- 插入測試數據 INSERT INTO test(name, age) VALUES ('張三', 20), ('李四', 25), ('王五', 27); -- 查詢時增添自增 ID SELECT (@rowNum:=@rowNum+1) AS rowNumber, name, age FROM test, (SELECT @rowNum:=0) AS t;
首先我們創建一個測試數據表,包括用戶名、年齡、ID 三個字段。然后我們將 ID 列設為自增 ID,這樣每次往數據表中插入新紀錄時,系統會自動為它指定一個自增 ID。接下來我們插入了三條測試數據。
在查詢時,我們需要增添自增 ID 列。這里我們可以通過 SELECT 語句的方式,使用 MySQL 內置的變量來實現自增 ID 的功能。具體來說,我們定義一個變量 @rowNum,每讀取一行數據,變量就自增一,同時將行號值賦給 rowNumber 列。這樣,我們就實現了查詢時增添自增 ID 列的功能。