gpt4 book ai didi

sql-server - 有没有办法将 varchar 列索引为日期时间?

转载 作者:行者123 更新时间:2023-12-03 01:22:24 25 4
gpt4 key购买 nike

我正在查询包含所有有效日期时间的 varchar 列。在查询中,我将列转换为日期时间。

请记住,不能将列的数据类型定义更改为日期时间。相信我,这不是一个选择。

通过查询分析,我发现如果可以在此列上添加索引,查询会快得多。但它是varchar。如果我添加一个索引,它会根据它的 varchar 值进行索引,对吧?但我希望它对日期时间值进行索引,是吗?

我可以在这里为索引做些什么吗?

最佳答案

有效数据是第一要务,因为当该值与可接受的格式不匹配时,任何将数据转换为 DATETIME 的方法都会在午夜返回 1900 年 1 月 1 日的值。

SQL Server 没有基于函数的索引,因此您的选择是:

  1. 一个computed column ,假设您可以使用 ALTER TABLE 语句将列添加到表中。之后您可以将此列编入索引。
  2. indexed view (AKA materialized view) ,假设您的数据满足要求
  3. 临时表,从原始表克隆(如果您愿意,可以进行调整),您可以在其中从现有表导入数据,以便可以对其进行索引和操作

关于sql-server - 有没有办法将 varchar 列索引为日期时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3808917/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com