精华内容
下载资源
问答
  • /*查询数据库所有数据量及占用空间大小*/ SELECT t.table_name AS "数据库表名" ,t.num_rows AS "行数" ,round(t.num_rows * t.avg_row_len / 1024 / 1024,2) || ' M' AS...
    /*查询数据库所有表的数据量及占用空间大小*/
    SELECT t.table_name AS "数据库表名"
           ,t.num_rows AS "行数"
           ,round((nvl(t.num_rows,0) * nvl(t.avg_row_len,0)) / 1024 / 1024,2) || ' M' AS "占用空间"
           ,to_char(SYSDATE, 'yyyy-mm-dd hh24:mi:ss') AS "创建时间"
      FROM user_tables t
     WHERE 1 = 1
       AND nvl(t.num_rows, 0) <> 0
     ORDER BY (nvl(t.num_rows,0) * nvl(t.avg_row_len,0)) DESC;
    
    展开全文
  • 有些时候,我们需要查看数据库数据表数据量情况,或者自己需要查看一个大数据量表。通过业务经验,或许知道自己公司的业务哪个表数据量较大。但对于外人或是不熟悉业务的,此时我们就需要...

    热门系列:


    目录

    1.前言

    2. 查询数据量最大的表

        2.1 查询数据库信息

        2.2 切换到information_schema库

        2.3 查看库中所有数据表及数据表描述

        2.4 查询数据表(根据行数倒序)


    1.前言

    有些时候,我们需要查看数据库数据表的数据量情况,或者自己需要查看一个大数据量表。通过业务经验,或许知道自己公司的业务表哪个表数据量较大。但对于外人或是不熟悉业务的,此时我们就需要自己来手动查询了。


    2. 查询数据量最大的表

    2.1 查询数据库信息

    -- 查询数据库信息
    show DATABASES;

    2.2 切换到information_schema库

    use information_schema;

    2.3 查看库中所有数据表及数据表描述

    show tables;

    desc tables;

    2.4 查询数据表(根据行数倒序)

    select table_name,table_rows from  tables order by table_rows desc limit 10;

    如此,库中最大数据量的表就查找出来了。我的本地库测试数据表test_data数据量是最高的。

     

    本博客皆为学习、分享、探讨为本,欢迎各位朋友评论、点赞、收藏、关注,一起加油!

     

    展开全文
  • 大数据sqlserver数据库表数据迁移

    千次阅读 2018-05-11 15:52:17
     在SQLServer2005中,想从一个数据库服务器迁移一个数据表数据到另一数据库服务器的中,大家一般会怎么做呢? 我先来说说我今天的做法:(因为自己的笔记本上没有装软件,不能截图给大家看了,大家可以自己...
    今天真汗颜啊。。。。由于我的一不小心,我把几百万条数据给删了,囧。客户的几年重要数据就这样没了,我当时愁的,还好后来找回来了。
    对于大数据的操作,大家一定要慎重操作。
        在SQLServer2005中,想从一个数据库服务器迁移一个数据表的数据到另一数据库服务器的表中,大家一般会怎么做呢?
        我先来说说我今天的做法:(因为自己的笔记本上没有装软件,不能截图给大家看了,大家可以自己动手操作下)
        刚开始我利用一种方法,很笨且不安全的,大家引以为戒。
        老大交给我任务了,我一想那么多数据,总不能一条一条手工插入吧。我思考了一段时间,我决定利用SQLServer的自带工具,右键点击,导入/导出数据功能。先用T-SQL语句根据条件筛选出需要的数据,在一台数据库服务器上操作,将查询出的数据右键另存为.rpt.txt格式的文件。然后在另一个服务器上导入这些数据。当我*作前几个表的数据正常的时候,我还洋洋得意,到了最后一个表时发现导入的数据再遇到datetime类型时,发现傻眼了,前几十条数据正常导入,到了后面的一条数据以后,后面的几万条数据导不了了啊,有木有?囧!这是为什么呢?我检查了下数据,发现到那条卡壳的数据时,那里有个null值。嗯???为什么空就不能导入了?varchardatetime类型的区别,我想大家都知道吧。对,问题就出在这。当我们把数据导出去的时候,那些数据最严重的缺点就是少了字段描述了,全变成了varchar类型了。不信的话,你用导入工具导入到一个新表里试试(这里没法截图,大家自己可以试试),你会发现默认的数据都成varchar类型了。悲剧,这个方法遗憾失败!
    正确的做法是:
    一、
    T-SQL语句新建一个临时表,这个表和你需要导出数据表的字段定义一样。假设我们要导出的数据库表为A,那么这个临时表叫A_Temp




    T-SQL语句:
    • INSERT
      INTO  A_Temp  SELECT  *  FROM  A  WHERE 1 = 1  AND  BeginTime  > ’2012-11-05 00:00:00’ AND BeginTime < ‘2012-11-06 00:00:00’
    将筛选出来的数据拷贝到A_Temp表中。

    再在另一个数据库服务器上操作:


    T-SQL语句新建一个临时表,这个表和你需要导出数据表的字段定义一样。

    二、
    利用SQLServer导入导出工具将22的数据库表A_Temp导入到23的数据库表B_Temp中,现在再将B_Temp表中的数据添加到B表中。这样就搞定了。


    • INSERT
      INTO  B  SELECT  *  FROM  B_Temp



    总结这样的好处:
    1)
    可以很清楚明白的知道你要导出的数据,方便后来维护查询;

    2)

    不会出现数据类型对不上的情况
    ,当时是因为自己的粗心大意,在查询数据的时候把Delete看成了Select执行了,结果导致严重的后果,差点就赔钱了啊。汗。。。

    3)
    思路明确,严谨。



        好了,今天的总结就到这,学无止境,工作中一定要心细。大家在操作大数量的数据时,每当使用UpdateDeleteInsert时一定要考虑好,重新检查一遍,想想你正在做什么?不要一失足成千古恨,到时候悔之晚矣。
    展开全文
  • SQL数据库查询LIMIT 数据分页

    万次阅读 2017-11-28 12:17:43
    SQL数据库查询LIMIT 数据分页SQL的语句LIMIT 约束SELECT 查询数据包时,使得SQL查询语句返回指定的记录数(行数)。LIMIT 可以设置1个或2个int整型常量数字作为参数。LIMIT在数据分页查询时候十分有用,因为不是每...
    SQL数据库查询LIMIT 数据分页

    SQL的语句LIMIT 约束SELECT 查询数据包表时,使得SQL查询语句返回指定的记录数(行数)。LIMIT 可以设置1个或2个int整型常量数字作为参数。LIMIT在数据分页查询时候十分有用,因为不是每一次查询都需要:
    SELECT * FROM table
    这么笨重的花费巨大性能开销查出所有数据,而是有约束的查询需要的分页数据即可。
    LIMIT设置两个参数时候,前一个参数表示偏移,后一个表示最多查出的数据条数。
    比如常见的:
    SELECT * FROM table
    使用LIMIT约束后,变成:
    SELECT * FROM table LIMIT 0,-1
    LIMIT后的第一个参数0限定偏移量,后面的-1表示数据库表中最后一条数据,因为SQL中id是从1开始,所以返回了全部数据行。

    (一)LIMIT n即为LIMIT 0,n
    举例:SELECT * FROM table LIMIT 10
    查出10条数据行,由于没有设置偏移量,那么就使用默认偏移量0,这10条数据id为:1,2,3,4,5,6,7,8,9,10
    可以认为LIMIT n即为LIMIT 0,n

    (二)LIMIT pos,count。pos为前置开始的id偏移位置(不是开始位置),count为数据条目总数。
    举例:SELECT * FROM table LIMIT 3,10
    第一个参数偏移量为3,从id=4开始,查出10条数据,这10条数据id为:4,5,6,7,8,9,10,11,12,13

    又如:
    SELECT * FROM table LIMIT 8,3
    第一个参数偏移量为8,从id=9开始,查出3条数据,这3条数据id为:9,10,11
    展开全文
  • SqlServer 数据库表数据迁移

    千次阅读 2018-12-11 10:52:06
    这是前两天做的一个项目,主要功能就是把A的数据,迁移到B和C,然后删除掉A的数据。  限制就是,在A中没有任何的标识列可以证明了该的某行数据被操作过,并且,还在往A中不停的插入数据。如果直接...
  • 查询sqlserver数据库占用数据大小 ifexists(select1fromtempdb..sysobjectswhereid=object_id('tempdb..#tabName')andxtype='u') droptable#tabName go createtable#tabName( tabnamevarchar(100), rowsNumva.....
  • mysql 查看数据库表数据量大小

    千次阅读 2018-08-27 11:29:45
    查看某个数据库下每张数据量大小 use information_schema; select table_name,table_rows from tables where TABLE_SCHEMA = '数据库名字' order by table_rows desc;
  • SELECT a.name AS 表名, MAX(b.rows) AS 记录条数 FROM sys.sysobjects AS a INNER JOIN sys.sysindexes AS b ON a.id = b.id WHERE (a.xtype = 'u') GROUP BY a.name ORDER BY 表名 DESC
  • sqlserver查询数据库表数量

    千次阅读 2018-12-19 17:19:07
    SQL Server系统sysobjects介绍与使用 参考:https://www.cnblogs.com/atree/p/SQL-Server-sysobjects.html 可能需要偶尔做一点不同寻常的事,例如数据库所有的触发器。你可以一个一个地检查表格,但是如果你有...
  • sql server查询数据库数据条数

    千次阅读 2017-10-13 15:05:23
    第一种: select  sum(c.row_count) as datacount from sys.indexes a ,  sys.objects b ,  sys.dm_db_partition_stats c where a.[object_id] = b.[object_id]  A
  • sql server 数据库大量数据自动丢失?

    千次阅读 2008-03-22 10:10:00
    环境:Windows2000+SQL Server 2000数据库记录数量属于百万级的现象:系统已经正常运行近两年了每天都有几千条交易记录,当天查询数据时候数据正常,到第二天查询时候发现前天数据丢了1/3,这种现象就是近10天发生的,不...
  • 1.获取所有数据库名:  Select Name FROM Master..SysDatabases order by Name 2.获取所有表名:   (1) Select Name FROM SysObjects Where XType='U' orDER BY Name XType='U':表示所有用户;   XType='
  • SQL Server 往数据库 插入大量数据的问题 有一个表名 test 表里有10个字段 每个字段都要非空 如果我要往test 插入10000条数据 怎么插了
  • SQL语句查看数据库数据量的大小

    万次阅读 2018-10-31 21:17:52
    1、进入MQSQL命令行界面 ... 3、输入命令  ...1、进入information_schema 数据库(存放了其他的数据库...2、查询所有数据的大小: select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables;...
  • ![图片说明](https://img-ask.csdn.net/upload/201804/23/1524470137_184091.png) 如图 id0是后面的父节点, 怎么做到复制一份数据后 p_id 会随着父节点变化 比如此时id为100 p_id也存为100 用数据库代码什么实现?
  • ***begin查询数据库各个表里的数据行数 selectb.name,a.row_countfromsys.dm_db_partition_statsa, sys.objectsb wherea.object_id=b.object_id anda.index_id<=1 andb.type='U'ORDERBYrow_count **...
  • SQL SERVER 获取数据库中所有的表名及中的数据量代码如下:select b.name as tablename , a.rowcnt as datacount from sysindexes a , sysobjects b where a.id = b.id and a.indid < 2
  • Sqlserver数据库表导出CSV文件

    千次阅读 2019-09-18 06:54:33
    1、方式一 方便快捷 直接Select查询数据的数据,选中数据另存为CSV文件,方便快捷,这样方式适合导入数据量小的数据。数据量太大会更sqlserver服务带来压力,也耗费内存,造成内存崩溃!2、方式二 Sqlserver自带的...
  • --查询数据库中指定大小 exec sp_spaceused '表名'; 参考路径: https://docs.microsoft.com/zh-cn/sql/relational-databases/system-stored-procedures/sp-spaceused-transact-sql?view=sql-serv...
  • 查询某个数据库下有多少张表 SELECT COUNT(*) TABLES FROM information_schema.TABLES WHERE...查询某个数据库下每个有多少条数据 select TABLE_NAME, concat(truncate(data_length/1024/1024,2),' MB') as dat...
  • SQL 清空数据库的所有表数据

    千次阅读 2010-06-13 18:40:00
    近来发现数据库过大,空间不足,因此打算将数据库数据进行全面的清理,但非常多,一张一张的清空,实在麻烦,因此就想利用SQL语句一次清空所有数据.找到了三种方法进行清空.使用的数据库为MS SQL SERVER. 1...
  • 1、查看某个数据库,直接执行存储过程sp_spaceused即可 exec sp_spaceused;...3、查看该数据库中的所有,可以写一个存储过程,然后执行即可 存储过程如下: SET ANSI_NULLS ON GO SET QUOTED_IDENTIFI...
  •   exec sp_addlinkedsrvlogin ‘名称’,'false’,'本地用户名称’,'远程用户名称’,'远程用户密码’ 2、倒入insert 数据库.dbo. select * from 远程名称.dbo. 建立了连接后,试试...
  • SQL查询数据库中所有的记录条数

    千次阅读 2013-11-06 22:54:23
    CREATE TABLE #temp (TableName VARCHAR (255), RowCnt INT) EXEC sp_MSforeachtable 'INSERT INTO #temp SELECT ''?'', COUNT(*) FROM ?' SELECT TableName, RowCnt FROM #temp ORDER BY RowCnt desc ...
  • sql语句查询到整个数据库的容量

    千次阅读 2017-08-29 17:17:59
    在需要备份数据库里面的数据时,我们需要...1、要查询表所占的容量,就是把表的数据和索引加起来就可以了select sum(DATA_LENGTH)+sum(INDEX_LENGTH) from information_schema.tables where table_schema='数据库名';
  •  从SQL SERVER 2005开始,数据库不默认生成NDF数据文件,一般情况下有一个主数据文件(MDF)就够了,但是有些大型的数据库,由于信息很多,而且查询频繁,所以为了提高查询速度,可以把一些或者一些中的部分记录...
  • SQL Server 检测到基于一致性的逻辑 I/O 错误SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不...在文件 D:/Program Files/Microsoft SQL Server/MSSQL.1/MSSQL/DATA/Vmanage.mdf 中、偏移为 0x000000005be00
  • Sql Server数据库数据恢复成功案例

    千次阅读 2018-10-11 16:33:44
    在windows服务器内装有Sql Server2008数据库。存储空间内共有三个逻辑分区,大小分别为500G、800G、2.3T。数据库文件丢失,主要涉及五个数据库个数约为6000个左右。丢失原因未知,且不能确定数据存储位置。三个...
  • EXEC sp_spaceused 表名 可以查询表数据量和容量等信息,循环查询数据库下表的的数据量和容量等信息用一下代码:if exists(select * from tempdb..sysobjects where id=object_id(tempdb..#spaceused))begindrop ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 592,478
精华内容 236,991
关键字:

sql查询数据库表数据量