• 日期处理疑难解答:


     原因:

    判断上述低效的依据主要是数据的扫描的方式,当查询的表上没有任何索引的情况下,对于数据的查询是全表扫描,上述条件没有任何问题

    但是查询的日期字段上有索引时,上述查询一般会降低查询效率,因为上述事例中的查询,或多或少都在查询字段上作了计算,这就意味着

    必须对每条纪律的查询字段作计算。并判断就算结果得值是否与条件匹配,从而确定是否满足条件,如果通过索引查询的话,最坏的情况是

    全部纪录满足查询条件,这种情况下数据检索时间是索引的时间加表的检索时间。这和显然别直接检索表的时间开销还大。


    上述结果是如何处理的:
      在sql server的处理中,日期和字符串是要求使用字符串边界符(默认为单引号')可以通过set
      quoted_identified选择重新设置)作为日期数据的标识符,2005-3-11没有使用边界符,那么
      sqlserver将作为一个表达式处理,很显然作为表达式处理,结果为1991.
      sqlserver以1900年1月1日作为基础日期,1905-06-15 00:00:00.000就是自1900年1月1日
      之后的1991天。

  • 相关阅读:
    中文字,文本框,button按钮垂直居中对齐方法
    Denny_Yang的语录
    为SELECT结果集添加伪序号列
    考勤系统问题记录一:事务日志太大
    在DateTable中进行数据统计(不用循环)
    今天去游泳了
    关于HbSrv.exe
    有感于--特洛伊
    windows下DNS的问题
    Google新功能
  • 原文地址:https://www.cnblogs.com/wequst/p/1290013.html
Copyright © 2020-2023  润新知