SQL COUNT溢出

时间:2011-04-13 02:02:21

标签: sql sql-server count overflow

这是我的问题:

SELECT COUNT(*) FROM Similarities WHERE T1Similarity = 0 OR T2Similarity = 0

结果如下:

  

Msg 8115,Level 16,State 2,Line 1

     

将表达式转换为数据类型int的算术溢出错误。

该表有40亿行。除了这个查询之外,我不会很快,但是大约5分钟后,它会因溢出错误而失败。对于比int更大的数据,是否有COUNT函数?

感谢。

2 个答案:

答案 0 :(得分:96)

使用COUNT_BIG

SELECT COUNT_BIG(*) FROM Similarities WHERE T1Similarity = 0 OR T2Similarity = 0

答案 1 :(得分:16)

  SELECT COUNT_BIG(*) FROM Similarities WHERE T1Similarity = 0 OR T2Similarity = 0