发布于 2016-04-15 08:15:00 | 98 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的SQL教程,程序狗速度看过来!

SQL 结构化查询语言

结构化查询语言(Structured Query Language)简称SQL(发音:/ˈɛs kjuː ˈɛl/ "S-Q-L"),结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上 工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。


说到如何得到表的行数,大家首先想到的应该是select count(*) from table1....
但是如何得到某个数据库所有的表的记录数,你要是用上面的方法估计得累死了。呵呵
下面提供如何借用sysindexes和sysobjects表来得到某个数据库每个表记录数的方法:
先给出SQL Server 2000版本的:
 
SELECT o.NAME, 
i.rowcnt 
FROM sysindexes AS i 
INNER JOIN sysobjects AS o ON i.id = o.id 
WHERE i.indid < 2 
AND OBJECTPROPERTY(o.id, 'IsMSShipped') = 0 
ORDER BY o.NAME 

SQL Server2005/8版本的SQL 语句:
 
SELECT o.name, 
ddps.row_count 
FROM sys.indexes AS i 
INNER JOIN sys.objects AS o ON i.OBJECT_ID = o.OBJECT_ID 
INNER JOIN sys.dm_db_partition_stats AS ddps ON i.OBJECT_ID = ddps.OBJECT_ID 
AND i.index_id = ddps.index_id 
WHERE i.index_id < 2 
AND o.is_ms_shipped = 0 
ORDER BY o.NAME 

赶快试试吧,肯定和你count(*)得到的结果相同。

最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务