达梦数据库查询语句严格区分字符串尾部空格问题

在比较、count等操作时有时会要求严格区分字符串'a'和'a '。

这时可以更改数据库参数达到严格区分字符串尾部空格问题。

1.    空格填充模式(BLANK_PAD_MODE)

建库参数,设置字符串比较时, 结尾空格填充模式是否兼容 ORACLE。 取值: 1 兼容; 0 不兼容。默认为 0。

当BLANK_PAD_MODE=0时,除去group by 这种分组操作时严格区分外,其他比较、count等操作不严格区分'a'和'a ',认为这两个字符串是相等的,如下图示例。

当BLANK_PAD_MODE=1时,所有操作严格区分'a'和'a ',如下图示例。

该参数在实例生命周期内是不允许修改的,所以建库时一定要确定好。

2.    SPACE_COMPARE_MODE

如若实例已创建,但需要严格区分字符串结尾空格,可以修改该参数。

SPACE_COMPARE_MODE:是否在查询语句中比较字符串后缀空格。0:维持原有策略;1:进行比较。默认为0。

当SPACE_COMPARE_MODE=0时,除去group by 这种分组操作时严格区分外,其他比较、count等操作不严格区分'a'和'a ',认为这两个字符串是相等的,如下图示例。

当SPACE_COMPARE_MODE=1时

该参数为静态参数,修改后需要重启服务。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值