我支持另一个开发人员编写的现有应用程序,我有一个问题,即开发人员选择存储日期的数据类型的选择是否会影响某些查询的性能.
相关信息:该应用程序在我们的一个表中大量使用"业务日期"字段.此业务日期的数据类型是nvarchar(10)而不是日期时间数据类型.日期格式为"MM/DD/YYYY",因此2007年圣诞节存储为"12/25/2007".
长话短说,我们有一些重要的查询,每周运行一次,并且需要很长时间才能执行.
我正在重新编写这个应用程序,但是由于我正在研究这个问题,我想知道使用datetime数据类型与存储日期之间是否存在性能差异,因为它们在当前数据库中.
如果使用datetime而不是nvarchar(10),则既可以节省磁盘空间又可以提高性能.
如果使用日期字段进行日期计算(DATEADD等),您将看到查询执行速度大幅提高,因为这些字段不需要在运行时转换为日期时间.