效率比较高sql语句。
2010-09-26 13:33
253 查看
IFEXISTS(SELECTnameFROMdbo.sysobjectsWHEREid=Object_id(N'[dbo].[row_count]'))
DROPFUNCTION[dbo].[row_count]
GO
CREATEFUNCTIONdbo.row_count(@table_namesysname)
--@table_namewewanttogetcount
RETURNSbigint
AS
BEGIN
DECLARE@nnbigint--numberofrows
IF@table_nameISNOTNULL
BEGIN
SELECT@nn=sum(p.rows)
FROMsys.partitionsp
LEFTJOINsys.allocation_unitsaONp.partition_id=a.container_id
WHERE
p.index_idin(0,1)
andp.rowsisnotnull
anda.type=1
andp.object_id=object_id(@table_name)
END
RETURN(@nn)
END
GO
比count(*)效率高很多。
DROPFUNCTION[dbo].[row_count]
GO
CREATEFUNCTIONdbo.row_count(@table_namesysname)
--@table_namewewanttogetcount
RETURNSbigint
AS
BEGIN
DECLARE@nnbigint--numberofrows
IF@table_nameISNOTNULL
BEGIN
SELECT@nn=sum(p.rows)
FROMsys.partitionsp
LEFTJOINsys.allocation_unitsaONp.partition_id=a.container_id
WHERE
p.index_idin(0,1)
andp.rowsisnotnull
anda.type=1
andp.object_id=object_id(@table_name)
END
RETURN(@nn)
END
GO
比count(*)效率高很多。
相关文章推荐
- JDBC获取SQL查询语句返回记录数的三种方式效率比较
- 关于拼sql语句执行与直接执行存储过程的效率比较
- sql语句or与union all的执行效率比较
- SQLServer中监视sql执行的时间,比较sql语句的效率
- SQLServer中监视sql执行的时间,比较sql语句的效率
- sql语句or与union all的执行效率比较
- 关于拼sql语句执行与直接执行存储过程的效率比较
- 10万数据量的数据库查询效率比较 纯sql语句 和 view 视图
- sql语句的优化分析之一查询语句中左连接和函数效率分析比较
- JDBC获取SQL查询语句返回记录数的三种方式效率比较
- 在一个千万级的数据库查寻中,如何提高查询效率?分别说出在数据库设计、SQL语句、java等层面的解决方案。
- sql Exists in 文章1:SQL里的EXISTS与in、not exists与not in 效率比较和使用
- 比较常用的Oracle的SQL语句语法
- SQL语句与存储过程的比较 转帖
- 比较常用的sql 查询语句
- [SQL]提升SQL执行效率诀窍2-优化SQL语句
- SQL语句效率问题的几点总结
- SQL 查看SQL语句执行效率 编译时间 执行时间 逻辑读取总次数
- access与SqlServer 之时间与日期及其它SQL语句比较
- SQL 语句中 多表与 where 多条件 顺序与执行效率