![]() |
1
3
一种适用于许多数据库的方法如下:
当然,分隔符可能会导致问题,因此这更安全:
|
![]() |
2
2
对于informix 12.10(开发者版) INSTR() 似乎没有正确地将函数参数转换为字符类型。 我给VARCHAR和 INSTR() 函数开始返回正确的值。
退货:
编辑: 阐明 INSTR() 功能:
退货:
话虽如此 DECODE() 里卡多的建议似乎是一个更好的选择。 |
![]() |
3
2
此答案仅用于解释 @luÃs-marques 和 @gordon-linoff . 自从版本11.70以来,informix INSTR 函数,该函数获取字符串并查找一个子字符串(也是给定的),并返回该字符串中出现该子字符串的位置( 国际商用机器公司 文档说这是结束,但这是一个文档错误)。 您使用的解决方案是:
要了解正在发生的事情,您可以:
这将输出:
但请记住,您可能会在使用流量计时遇到问题 @戈登·林诺夫 . 例如:
要进行排序,请始终分隔所需值的开始和结束,在这种情况下,将是:
另一种方法是使用
CHARINDEX
函数,从11.70开始也可用。请注意参数的顺序是相反的;首先传递要查找的子字符串,然后传递源字符串。使用的好处
当使用旧版本的Informix时
|
![]() |
Community wiki · SQL语法新手 1 年前 |
|
KateMak · 是否将多行中的多列与唯一id组合? 1 年前 |
![]() |
Karuna · SQL中列内的筛选器[重复] 1 年前 |
![]() |
Irvan Affandy · 为另一个选择选择声明的键 1 年前 |
![]() |
Community wiki · 这个MySQL语句出了什么问题? 1 年前 |
![]() |
Community wiki · 优化从同一表中提取的多列的查询 1 年前 |