sql有类似VFP中SEEK函数吗?

lrest 2004-12-28 10:12:52
如果数据表有 1百万条记录,要查找某个品种的记录是否存在。

俺是这样做的:

vfp: seek 找到第一个记录后,停止搜索,指针停在当前记录,否则遍历整个数据库,指针停在记录尾部。

sql: select count(*) from table where ... 无论是否有符合条件的记录,都要搜遍整个数据库。

当然两者索引肯定是要建的。
显然在sql中俺那样写,SQL做了很多无用功(每次无条件遍历整个数据表,搜索所有符合条件的记录)。

俺希望在 sql中能像 vfp 中的 seek函数,找到第一个符合条件的记录后,立即停止搜索。


======================================================================
注:
俺所指的遍历整个数据库,是说它会把数据表中所有符合条件的记录统统罗列出来,并不是说SQL会逐个判断记录。

如果在SQL中能用 declare CURSOR 定义游标的容量为1行,那么这个问题也解决了。
...全文
110 点赞 收藏 2
写回复
2 条回复
yesyesyes 2004年12月29日
select top 1 * from tbl where ...
回复 点赞
lrest 2004年12月29日
上面方法,速度更慢。

问题已解决,结贴。
回复 点赞
发动态
发帖子
应用实例
创建于2007-09-28

1.1w+

社区成员

6.8w+

社区内容

MS-SQL Server 应用实例
社区公告
暂无公告