2

我有一张这样的桌子

在此处输入图像描述

我想把它转换成这样的表格

在此处输入图像描述

基本上,我想为列 id 分配顺序值。有什么查询吗?mysql中rownum的等价物是什么?

4

3 回答 3

2

您需要使用AUTO_INCREMENT

CREATE TABLE animals (
     id MEDIUMINT NOT NULL AUTO_INCREMENT,
     name CHAR(30) NOT NULL,
     PRIMARY KEY (id)
) ENGINE=MyISAM;
于 2013-01-29T11:55:29.550 回答
1

你可以用一种方式做到这一点。将id列设为 asPRIMARY KEY AUTO INCREMENT然后更改所有1s的数据值,null然后尝试插入。

CREATE TABLE `people` (
     `id` INT NOT NULL AUTO_INCREMENT,
     `name` CHAR(30) NOT NULL,
     `profession` CHAR(30) NOT NULL,
     PRIMARY KEY (id)
) ENGINE=InnoDB;

然后像这样的SQL:

INSERT INTO `people` VALUES
(null, 'John', 'Engineer'),
(null, 'Ronny', 'Doctor'),
(null, 'Monty', 'Engineer');
于 2013-01-29T11:55:36.917 回答
1

你可以通过创建一个主键并给它一个 AUTO_INCREMENT 来做到这一点,就像这样

id int NOT NULL AUTO_INCREMENT,
于 2013-01-29T11:56:03.380 回答