查询sql行数
1. sql语句 查询记录数
sql中查询记录数用count函数。
1、创建测试表,插入数据:
createtabletest
(idint)
insertintotestvalues(1)
insertintotestvalues(2)
insertintotestvalues(3)
insertintotestvalues(null)
2、查询记录数为两种,一种是count(*),一种是count(字段值):
测试一:
selectcount(*)fromtest
结果:
说明:如果count(字段名)的字段中含有空值,则在count中不计数,而count(*)则是查询全部的行数。
2. 如何用SQL语句查询表名和行数
//查询所有表明
select name from sysobjects where xtype='u'
select * from sys.tables
//查询数据库中所有的表名及行数
SELECT a.name, b.rows
FROM sysobjects AS a INNER JOIN sysindexes AS b ON a.id = b.id
WHERE (a.type = 'u') AND (b.indid IN (0, 1))
ORDER BY a.name,b.rows DESC
//查询所有的标明及空间占用量\行数
select
object_name(id) tablename,
8*reserved/1024 reserved,
rtrim(8*dpages)+'kb' used,
8*(reserved-dpages)/1024 unused,
8*dpages/1024-rows/1024*minlen/1024 free,
rows
--,*
from sysindexes
where indid=1
order by tablename,reserved desc
3. 如何查询SqlServer中所有表的数据行数,并且显示所有空表非空表
1、以数据库text为例:
USE text
go
SELECT ?A.NAME,MaxRows = MAX(B.rows)
FROM sys.tables A
INNER JOIN sys.partitions B?ON A.object_id = B.object_id
GROUP BY A.name
ORDER BY MAX(B.rows) DESC?- -按数据行数的降序进行排序显示
2、显示所有空表
USE text
go
SELECT ?A.NAME,MaxRows = MAX(B.rows)
FROM sys.tables A
INNER JOIN sys.partitions B?ON A.object_id = B.object_id
GROUP BY A.name
HAVING MAX(B.rows) = 0
3、显示所有非空表
USE text
go
SELECT ?A.NAME,MaxRows = MAX(B.rows)
FROM sys.tables A
INNER JOIN sys.partitions B?ON A.object_id = B.object_id
GROUP BY A.name
HAVING MAX(B.rows) > 0
4. sql如何查询表中数据一共有多少条每条数据分别在第几行 如 20170301 name1 2
查询表一共有多少记录可以使用count函数获得,例如
select count(*) as 记录行数 from 表名;
至于每条记录在哪一行就比较麻烦了,因为数据库是不关心记录的存储位置的,它不像电子表格拥有固定的记录行号。
这种问题通常应该交给应用程序端来解决。数据库端解决的话,如果支持开窗函数ROW_NUMBER()的,可以利用该函数获取记录的行号,不支持的话那就要用存储过程或游标来解决,是很麻烦或低效率的。
5. SQL语句如何查找出第几行的数据
select
top
100
*
from
table
where
key
not
in
(select
top
100
key
from
table)
大概想法是,用括号中的语句将最上面的100行找出来,然后用not
in排除掉,这样一来虽然是找的top100
但是因为已经排除了100行所以就是第100行到200行了。
6. SQL 使用select查询语句返回结果,如何获得结果的数量,即行数!
select count(A), A from C where B<>0
count是一个聚合函数,用来统计查询出来的结果条数的总数,
7. 如何统计SQL语句查询出来的条数
i=SELECT count(1) FROM TABLE
语句返回值即为查询出来的条数.
示例如图所示:
扩展:
COUNT() 函数返回匹配指定条件的行数。
语法
(1). SQL COUNT(column_name) 语法
COUNT(column_name) 函数返回指定列的值败败的数目(NULL 不计入):
SELECT COUNT(column_name) FROM table_nameSQL
(2). COUNT(*) 语氏迅法
COUNT(*) 函数返回歼枯此表中的记录数:
SELECT COUNT(*) FROM table_nameSQL
(3). COUNT(DISTINCT column_name) 语法
COUNT(DISTINCT column_name) 函数返回指定列的不同值的数目:
SELECT COUNT(DISTINCT column_name) FROM table_name
8. sql 查询指定行
什么数据库?\x0d\x0a如果是 Oracle 或者 SQL Server 的话。 可以\x0d\x0a\x0d\x0aSELECT\x0d\x0a *\x0d\x0aFROM\x0d\x0a(\x0d\x0a SELECT ROW_NUMBER() OVER( ORDER BY 排序的字段 ) AS 序号\x0d\x0a 表.*\x0d\x0a FROM\x0d\x0a 表\x0d\x0a) tmp\x0d\x0aWHERE\x0d\x0a tmp.序号 = 12345\x0d\x0a\x0d\x0a如果是 MySQL 的话, 直接\x0d\x0aSELECT * FROM 表 LIMIT 12344, 1\x0d\x0a注:\x0d\x0aLIMIT 接受一个或两个数字参数。\x0d\x0a参数必须是一个整数常量。\x0d\x0a如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,\x0d\x0a第二个参数指定返回记录行的最大数目。\x0d\x0a初始记录行的偏移量是 0(而不是 1)