|
0
|
| Vinko Vrsalovic · 技术社区 · 17 年前 |
|
|
1
2
它是InStr()/SubString(),将运算符(1)更改为运算符(001),将n单独存储在运算符(n)中,或者创建一个隐藏丑陋字符串操作的计算列。你所拥有的似乎很好。 |
|
|
2
1
如果你真的 有 为了保持数据的格式不变,添加一个数字排序列是更好的解决方案,那么可以考虑将文本操作封装在用户定义的函数中。 通过dbo.udfSortOperator从表顺序中选择列名(列名) 它不那么丑陋,给你一些抽象。函数调用还有额外的开销,但在一个不太受影响的数据库服务器中,对于一个包含数千行的表来说,这不是一个主要问题。在功能中做笔记,以便以后根据需要进行验光。 |
|
|
3
0
我的答案是改变这个问题。如果可能的话,我会在表中添加一个operatorNumber字段。更改更新/插入例程以提取数字并将其存储。这样,每条记录的字符串转换命中率只有一次。 每次运行查询时,排序逻辑都需要进行字符串转换。 |
|
|
4
0
好吧,首先定义一下那列的含义。运算符是否是一个名称,以便您可以证明使用字符的合理性?还是一个数字? 如果字段是一个名称,那么您将使用字符,然后您需要确定固定长度。在左侧用零填充所有操作员名称。定义运算符的命名规则(即没有字母。或者您将在“A001”等序列中使用的代码) 索引将对服务器中的物理数据进行排序。一个正确定义的文本命名将在查询中对它们进行排序。你会两者都想要。 如果运算符是数字,则该列的数据类型错误,需要更改。 |
|
|
5
0
索引计算列
如果您发现自己在订购或以其他方式查询
|
|
|
Johnny T · 基于当前值的SQL合并表[重复] 1 年前 |
|
John D · 需要为NULL或NOT NULL的WHERE子句 1 年前 |
|
ojek · 如何对SQL结果进行分组和编号? 1 年前 |
|
|
senek · 如何在PL/SQL中将选择结果(列)放入数组中 1 年前 |
|
|
Sax · 规范化Google表格(第一步) 1 年前 |
|
|
Jatin · 检索卷计数的动态sql抛出错误语法错误[关闭] 1 年前 |
|
|
Andrus · 如何在sql中查找第二个匹配项 1 年前 |