检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
果找到了多个备选的操作符,我们将从中选择一个最合适的。 寻找最优匹配。 抛弃那些输入类型不匹配并且也不能隐式转换成匹配的候选操作符。unknown文本在这种情况下可以转换成任何东西。如果只剩下一个候选项,则用之,否则继续下一步。 遍历所有候选操作符,保留那些输入类型匹配最准确的。
型选择的问题。根据首选类型和可用的隐含转换,就可能保证有歧义的表达式(那些有多个候选解析方案的)得到有效的方式解决。 所有类型转换规则都是建立在下面几个基本原则上的: 隐含转换绝不能有奇怪的或不可预见的输出。 如果一个查询不需要隐含的类型转换,分析器和执行器不应该进行更多的额外操
则不会找到匹配的函数。 如果未找到完全匹配,请查看该函数是否为一个特殊的类型转换函数。 寻找最优匹配。 抛弃那些输入类型不匹配并且也不能隐式转换成匹配的候选函数。unknown文本在这种情况下可以转换成任何东西。如果只剩下一个候选项,则用之,否则继续下一步。 遍历所有候选函数,
查询中引入任何不必要的隐含类型转换调用。 另外,如果一个查询在调用某个函数时需要进行隐式转换,当用户定义了一个有正确参数的函数后,解释器应该选择使用新函数。 XML类型数据不支持隐式类型转换,包括字符串和XML类型之间的隐式转换。 父主题: 类型转换
则不会找到匹配的函数。 如果未找到完全匹配,请查看该函数是否为一个特殊的类型转换函数。 寻找最优匹配。 抛弃那些输入类型不匹配并且也不能隐式转换成匹配的候选函数。unknown文本在这种情况下可以转换成任何东西。如果只剩下一个候选项,则用之,否则继续下一步。 遍历所有候选函数,
向查询中引入任何不必要的隐含类型转换调用。 如果一个查询在调用某个函数时需要进行隐式转换,当用户定义了一个有正确参数的函数后,解释器应该选择使用新函数。 XML类型数据不支持隐式类型转换,包括字符串和XML类型之间的隐式转换。 父主题: 类型转换
则不会找到匹配的函数。 如果未找到完全匹配,请查看该函数是否为一个特殊的类型转换函数。 寻找最优匹配。 抛弃那些输入类型不匹配并且也不能隐式转换成匹配的候选函数。unknown文本在这种情况下可以转换成任何东西。如果只剩下一个候选项,则用之,否则继续下一步。 遍历所有候选函数,
查询中引入任何不必要的隐含类型转换调用。 另外,如果一个查询在调用某个函数时需要进行隐式转换,当用户定义了一个有正确参数的函数后,解释器应该选择使用新函数。 XML类型数据不支持隐式类型转换,包括字符串和XML类型之间的隐式转换。 父主题: 类型转换
在找到一个操作符后,如果输入的参数类型和操作符的参数类型不一致,可能会发生隐式类型转换,转换后可能发生不可预知的行为。如果隐式转换后行为有问题,可以通过显式类型转换规避此问题。例如,定长类型bpchar转换为变长类型text后,会消除字符串行尾空格,如果再和其它字符串比较时可能会发生错误行为。
在找到一个操作符后,如果输入的参数类型和操作符的参数类型不一致,可能会发生隐式类型转换,转换后可能发生不可预知的行为。如果隐式转换后行为有问题,可以通过显式类型转换规避此问题。例如,定长类型bpchar转换为变长类型text后,会消除字符串行尾空格,如果再和其它字符串比较时可能会发生错误行为。
则判断其数据类型是否可以隐式转换为preferType,不可以则报错。 将最终preferType记录的数据类型作为整个表达式最终的返回值类型;表达式的结果向此类型进行隐式转换。 注1: 为了兼容一种特殊情况,即表示了超大数字的字符类型向数值类型转换的情况,例如select decode(1
则判断其数据类型是否可以隐式转换为preferType,不可以则报错。 将最终preferType记录的数据类型作为整个表达式最终的返回值类型;表达式的结果向此类型进行隐式转换。 注1: 为了兼容一种特殊情况,即表示了超大数字的字符类型向数值类型转换的情况,例如select decode(1
在找到一个操作符后,如果输入的参数类型和操作符的参数类型不一致,可能会发生隐式类型转换,转换后可能发生不可预知的行为。如果隐式转换后行为有问题,可以通过显式类型转换规避此问题。例如,定长类型bpchar转换为变长类型text后,会消除字符串行尾空格,如果再和其它字符串比较时可能会发生错误行为。
则判断其数据类型是否可以隐式转换为preferType,不可以则报错。 将最终preferType记录的数据类型作为整个表达式最终的返回值类型;表达式的结果向此类型进行隐式转换。 注1: 为了兼容一种特殊情况,即表示了超大数字的字符类型向数值类型转换的情况,例如select decode(1
检查隐式转换的性能问题 在某些场景下,数据类型的隐式转换可能会导致潜在的性能问题。请看如下的场景: SET enable_fast_query_shipping = off; CREATE TABLE t1(c1 VARCHAR, c2 VARCHAR); CREATE INDEX
则判断其数据类型是否可以隐式转换为preferType,不可以则报错。 将最终preferType记录的数据类型作为整个表达式最终的返回值类型;表达式的结果向此类型进行隐式转换。 注1: 为了兼容一种特殊情况,即表示了超大数字的字符类型向数值类型转换的情况,例如select decode(1
在找到一个操作符后,如果输入的参数类型和操作符的参数类型不一致,可能会发生隐式类型转换,转换后可能发生不可预知的行为。如果隐式转换后行为有问题,可以通过显式类型转换规避此问题。例如,定长类型bpchar转换为变长类型text后,会消除字符串行尾空格,如果再和其它字符串比较时可能会发生错误行为。
则判断其数据类型是否可以隐式转换为preferType,不可以则报错。 将最终preferType记录的数据类型作为整个表达式最终的返回值类型;表达式的结果向此类型进行隐式转换。 注1: 为了兼容一种特殊情况,即表示了超大数字的字符类型向数值类型转换的情况,例如select decode(1
则判断其数据类型是否可以隐式转换为preferType,不可以则报错。 将最终preferType记录的数据类型作为整个表达式最终的返回值类型;表达式的结果向此类型进行隐式转换。 注1: 为了兼容一种特殊情况,即表示了超大数字的字符类型向数值类型转换的情况,例如select decode(1
检查隐式转换的性能问题 在某些场景下,数据类型的隐式转换可能会导致潜在的性能问题。请看如下的场景: SET enable_fast_query_shipping = off; CREATE TABLE t1(c1 VARCHAR, c2 VARCHAR); CREATE INDEX