`sex` varchar(255) DEFAULT NULL, PRIMARY KEY (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

2.插入数据

接下来我们插入一部分数据,如下:

INSERT INTO `stu` VALUES ('dhfj', '男');
INSERT INTO `stu` VALUES ('fjd', '男');
INSERT INTO `stu` VALUES ('ns', '女');
INSERT INTO `stu` VALUES ('uok', '女');
INSERT INTO `stu` VALUES ('sds', '男');

3.执行sql语句

首先我们先来看一下,正常的查询结果如下:

select * from stu;

在查询语句中添加一个变量的应用,使用如下语句即可实现增加一列id

SELECT
	(@id:=@id+1) as id,
	stu.*
	(SELECT @id:=0 )as id_temp

4.存在问题

使用此种方法生成的id主要取决于原表中的数据量有多少,就会生成多少数量的id,如果使用排序,分页,id都会从0开始,使用起来没有Oracle中的分析函数方便,但是可以解决一部分的问题。