非持久化的计算列,如果函数处理较复杂,那应该是会慢哦。

解决方案 »

  1.   


    那我使用持久化的计算列呢,也会慢?
      

  2.   

    持久化的计算列?不是计算完后再储存的吗,跟一般的列没区别啦怎么比较哦?
      

  3.   


    应用到的列更新后,数据库引擎自动更新计算列的值保存起来?那么,意思是说和非计算列相比,对查询效率是没有区别的?但对程序而言方便的很多,更新时不用再去管那些列了。另外就是,如果是这样的话,持久化的计算列,和非持久化的计算列有何区别?
    那么是不是就只有占用空间上的区别?和非持久化的计算列数据库在某处保存计算公式?持久化的计算列直接保存结果?
      

  4.   

    如此理解的话,
    只要能使用持久化的计算列,都尽量使用持久化的计算列?非持久化的计算列就免了,我估计肯定对查询效率有影响--索引都不能建的。
      

  5.   

    再顶一次
      

  6.   

    顶到有人来
      

  7.   

    计算列是不保存实际的计算结果的,只有查询时才会显示出该结果.因此无法对该字段创建索引
    计算列的持久化是在插入更新时同步计算,并把计算结果保存为实际数据,可以对持久化的计算列创建索引
      

  8.   

    嗯,楼上说的是这回事,所以,请问,持久化后建立索引后,对查询效率而言,是和普遍列的效果一样的吗?