![]() |
1
7
可以将计算列添加到表中。然后,索引计算列并在联接中使用该列。 前任:
那么你的问题是。。。
这将使用刚刚创建的索引快速返回行。 |
![]() |
2
7
SQL Server确实如此 不 条件允许时短路。 How SQL Server short-circuits WHERE condition evaluation . |
![]() |
3
3
为了确保可以使用索引,还要避免使用LIKE。例如,最好有:
比:
正如Steven A.Lowe提到的,第二个查询也可能不准确。 如果要使用T1中的所有行(换句话说,是一个到T2的左外部连接),那么最好使用:
如果您不确定每个方法,请执行一些查询计划,看看哪种方法最有效。 绝对最好的方法是按照其他人的建议,如果可能的话,将表的数据类型更改为匹配。即使你不能在这个项目到期之前完成它,也要把它放在你的“待办事项”清单上。 |
![]() |
4
3
怎么样
在这种情况下,它应该能够使用表1上的索引 |
![]() |
5
3
正如Mladen Prajdic的anwer中的链接页面所解释的,以防它有用,case子句 是 |
![]() |
6
1
如果ID是纯数字的(如您的示例所示),我建议(如果可能的话)将该字段改为数字类型。如果数据库在使用中已准备就绪,则可能很难更改类型。 |
![]() |
7
1
将数据库修复为一致
如果无法清除数据,请编写一个用户定义函数(UDF)以去除前导零,例如。
编辑:如果可能的话,Tom H关于转换为整数的建议是最好的。 |
![]() |
Community wiki · SQL语法新手 1 年前 |
|
KateMak · 是否将多行中的多列与唯一id组合? 1 年前 |
![]() |
Karuna · SQL中列内的筛选器[重复] 1 年前 |
![]() |
Irvan Affandy · 为另一个选择选择声明的键 1 年前 |
![]() |
Community wiki · 这个MySQL语句出了什么问题? 1 年前 |
![]() |
Community wiki · 优化从同一表中提取的多列的查询 1 年前 |