IF EXISTS (SELECT name FROM sysobjects
WHERE name = 'sp_select_suiji' AND type = 'P')
DROP PROCEDURE sp_select_suiji
GO
create procedure sp_select_suiji
as
SELECT top 3* FROM Heigth
WHERE 0.01 >= CAST(CHECKSUM(NEWID(), xuhao ) & 0x7fffffff AS float) / CAST (0x7fffffff AS int)
And CONVERT(varchar(20),shijian , 120 ) like '2013-06-01%'
go
exec sp_select_suiji

怎么才两条记录
------解决方案--------------------
为了效率问题,应该让所有的数据有个连续的唯一编号。
这样随机生成3个数字,按照数字得到3条结果即可。