簡體   English   中英

INNODB Engine中的Mysql AUTO_INCREMENT作為第二列

[英]MySql AUTO_INCREMENT in INNODB Engine as second column

我現在有一個非常煩人的問題。 我想要一張具有以下規格的表:

CREATE TABLE  `test` (
   `client` INT NOT NULL ,
   `id` INT NOT NULL AUTO_INCREMENT ,
   `test` INT NOT NULL ,
   PRIMARY KEY (  `client` ,  `id` ) ,
   INDEX (  `test` )
) ENGINE = INNODB;

您可以看到,我有一個帶有2列的主鍵。 現在我希望id auto_increment列僅按順序增加到第一列。 例如:

## client/id ##
1/1 
1/2 
1/3
2/1
2/2
2/3

等等

innodb真的不可能嗎? 由於事務功能,我需要innodb。

您可以在SELECT語句中輕松導出它

set @sno:=0;
set @client:='';
select @sno:=case when @client=client then @sno+1 else 1 end as sno,
@client:=client as client_id from table order by client;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM