日期列上的单列或多列索引最适合 SQL Server 中的性能?

发布于 2024-10-30 03:08:19 字数 370 浏览 0 评论 0原文

在 SQL Server 2000 中,是在 startend 日期列上创建一个索引更好,还是在每个日期列上创建一个索引更好? MySQL 处理多列索引的方式最有可能在单个索引中的两列上正常工作。但我不确定 SQL Server 如何处理这个问题。

这个想法是搜索 enddate > 的记录。 GIVEN_DATE,有时也使用 startdate GIVEN_DATE 和结束日期 > GIVE_DATE

由于我要添加索引的表非常大,并且需要一些时间并且在此期间使我们的系统保持离线状态,所以我之前在这里询问过,所以我不必稍后重做该过程;)

In SQL Server 2000, is it better to create an index on start and end date columns combined or one index on each one? MySQL handles multiple column indexes in a way that would most likley work fine with both columns in a single index. But I'm unsure how SQL Server handles this.

The idea is to search on a record where the enddate > GIVEN_DATE and also sometimes using startdate < GIVEN_DATE AND enddate > GIVE_DATE.

Since the table I will be adding the index to is quite large and will take some time and keep our system offline during that time I ask here before so I don't have to redo the procedure later ;)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

§对你不离不弃 2024-11-06 03:08:19

我将尝试在字段 ENDDATE + STARTDATE 上创建一个索引。 使用此索引

.... where ENDADATE > somedate

在这种情况下,MS SQL 可以在查询中和查询中

.... where ENDADATE > somedate and  STARTDATE < otherdate

,但请记住,此索引不会在以下查询中使用:

.... where STARTDATE < somedate

I'll try to create one INDEX on fields ENDDATE + STARTDATE. In this case MS SQL can use this index in queries

.... where ENDADATE > somedate

and on queries

.... where ENDADATE > somedate and  STARTDATE < otherdate

But keep in mind that this index will not be used in queries like

.... where STARTDATE < somedate
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文