图片 9

直接循环写入数据

有时候我们需要想数据中写数据 declare@iint set@i=1 while@i30 begin
insertintotable(id)values(@i) set@i=@i+1 end

这样就可以选取成绩信息表中的前10行的数据了。

  1. CREATE TABLE `uuidtest_inno` (  
  2. `id` char(36) CHARACTER SET utf8 NOT NULL DEFAULT ”,  
  3. PRIMARY KEY (`id`)  
  4. ) ENGINE=InnoDB DEFAULT CHARSET=latin1  
  1. select top 10 * from 成绩信息

测试准备:

 图片 1

 

5.declare @i int

set @i=20

select top (@i)  * from 成绩信息

这样就是显示前20行的数据

 

 

7.select top (6)  * from 成绩信息 order by
分数

这样是根据分数排序之后只显示前六行,但是从上图可以看到第六个记录里面分数是74,后面几行的记录也是74,为了避免后面相同的数据会被遗漏的情况,就要使用with
ties

  1.     CREATE TABLE `uuidtest_int` (  
  2.       `id` int(11) NOT NULL AUTO_INCREMENT,  
  3.       `test` varchar(255) CHARACTER SET latin1 DEFAULT NULL,  
  4.       PRIMARY KEY (`id`)  
  5. ) ENGINE=MyISAM DEFAULT CHARSET=utf8  

图片 2

 

 图片 3

 

6.select * from 成绩信息 order by
分数

对显示出来的数据根据分数进行排序

图片 4

 

p_uuid_myisam

SQLServer
中,top也很有用,例如查询部分数据,还可以用表达式。其语法如下:

 

1.select * from 成绩信息

Sql代码  图片 5

 

测试不严谨,你没有测试innodb下的int,一样的速度。

 

影响的数据栏: 0

 图片 6

 

4.declare @i int

set @i=20

select top (@i) percent * from
成绩信息

声明了一个变量i为整型,然后对变量i复制为20,然后就可以限制20%行数的数据了。

 

SELECT TOP number|percent column_name(s)
FROM table_name

人们讲用uuid会影响性能, 是说UUID的生成效率不高. 而非插入效率, 
生成了之后,UUID就是一普通字符串了.

 图片 7

 

select top (6) with ties  * from 成绩信息 order by 分数

使用with ties的时候后面需要紧跟order by子句,这样使用with
ties之后就可以将最后几条相同记录的信息都显示出来。就不会只是显示前6条记录了。

 图片 8

转自:

1、 建表

 图片 9

 

3.select top 10 percent * from
成绩信息

总行数是73,那么就会选择10%行数的数据进行显示

2 楼 gaizai 2012-02-29  

 

Sql代码  图片 10

 

 

 

表二:uuidtest_myisam

 

网上普遍认为Mysql  使用 UUID
主键性能低下,甚至建议用 自增ID
作为主键并用 UUID作唯一索引的方案。但没有提供具体的数据证明使用
UUID 作为主键时性能究竟低下到何种程度。为此我专门做了测试。