zoukankan      html  css  js  c++  java
  • sql 当中的 count 用法 及两个库复制数据时该列不能为空

      今天写sql时,用到了count,大家都知道count是统计数量的,因为我不管在写什么统计时,一般都会用直接这么用 select count (*) from 表,

    不知道其它人在用count时,是不是也是count (*) ,由于我们的数据库数据量是在40W数据之内,且该表字段数量在70个左右,

    用count(*)时,用时有时会在0-1秒之间,有时会在0秒(有可能是电脑速度问题),就在我查的同时,脑中忽然出现,为什么不直接count(id)呢?

    id列肯定是不为空的,于是就反复查询count(id),操作其它语句的再进行测试count(id)和count(*),发现用时都是在0秒,但是心里感觉还是count(id)要快一些。

    所以建议,如果遇到count时,不用*,直接用id列

      同理,如果在查select * from 表时,不如直接查select 字段,字段,字段...from 表,去掉没有用的字段,这样查出来的数据比*查出来的要快.

      刚才,从A库当中直接打开某个表,复制其中部分数据,到远程B库中的表里,提示该列值不能为空,查看复制的数据当中,该列没有为空的数据,

    后来想到,可能是因为复制的数据当中其它字段存在在空值,当中并不是NULL这样的值。所以打乱了字段的数据。

      后来想办法,先查出来导成Excle数据,再导入数据,谁知,导成的Excle表,当中数据也是乱的。于是就再试复制,把用sql查出来的数据进行复制,

    再再远程B库的表里粘贴,这下成功了,不知道是什么逻辑,直接打开表复制,不可以,查询出来的数据复制就可以。

  • 相关阅读:
    “非工作总结”之快门—我的镜头见过你
    书摘:日本式管理和依靠自己
    寒冬日,找阳光
    模式自由(Schemafree)和数据存储的非格式化趋势
    心体澄澈,意气和平
    思考些管理的事情
    含沙射影,业镜照胆
    临崖之马,上滩之舟—凡事一定要区别不同情况对待
    [转]HttpContext.Current.Cache 和 HttpRuntime.Cache
    句柄、引用、指针与对象(转)
  • 原文地址:https://www.cnblogs.com/beidao/p/2822128.html
Copyright © 2011-2022 走看看