Split comma delimited string --gt; FUNCTION db.CHARINDEX does not exist(拆分逗号分隔的字符串 --FUNCTION db.CHARINDEX 不存在)
问题描述
我需要将逗号分隔的字符串拆分为第二列我有下表:
I need to split comma delimited string into a second columns I have the following table :
CL1 POS POS2 LENGHT ALLELE
1 3015108,3015109 5 A
2 3015110,3015200 10 B
3 3015200,3015300 15 C
4 3015450,3015500 20 D
5 3015600,3015700 15 E
我想将逗号后的数字拆分为第二列 POS2所以它应该喜欢
I want to split the numbers after the comma into a second column POS2 So it should like that
CL1 POS POS2 LENGHT ALLELE
1 3015108 3015109 5 A
2 3015110 3015200 10 B
3 3015200 3015300 15 C
4 3015450 3015500 20 D
5 3015600 3015700 15 E
所以我查询了以下内容:
So I've queried the following :
INSERT INTO MyTable (POS2)
SELECT RIGHT(POS, CHARINDEX(',', POS) + 1 ) FROM MyTable ;
It returns an error :
ERROR 1305 (42000): FUNCTION test.CHARINDEX does not exist
推荐答案
MySQL 没有内置的 CHARINDEX() 函数.LOCATE() 将是 MySQL等价.
MySQL doesn't have a built-in CHARINDEX() function. LOCATE() would be the MySQL equivalent.
使用SUBSTRING_INDEX() 可能是一种更简洁的方法.像这样的东西(免责声明:未经测试):
Using SUBSTRING_INDEX() might be a more succinct way of doing this. Something like this (disclaimer: untested):
SUBSTRING_INDEX(POS, ',', 1) 用于 POS
SUBSTRING_INDEX(POS, ',', -1) 用于 POS2
顺便说一句,我可能误解了您要完成的任务,但您似乎想要UPDATE 现有行,而不是 INSERT 新行?类似的东西:
As an aside, I may be misunderstanding what you're trying to accomplish, but it looks like you might want to UPDATE existing rows, not INSERT new ones? Something like:
UPDATE MyTable SET POS2 = SUBSTRING_INDEX(POS, ',', -1);
UPDATE MyTable SET POS = SUBSTRING_INDEX(POS, ',', 1);
这篇关于拆分逗号分隔的字符串 -->FUNCTION db.CHARINDEX 不存在的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:拆分逗号分隔的字符串 -->FUNCTION db.CHARINDEX 不存在
基础教程推荐
- 在 SQL 中连接多个表 2021-01-01
- 无法解决整理冲突 2021-01-01
- SQL:使用来自具有相同列名的两个表中的数据... 2021-01-01
- SQL 效率:WHERE IN 子查询 vs. JOIN 然后 GROUP 2021-01-01
- 如何使用 mysql.connector 禁用查询缓存 2022-01-01
- 将 SQL Server DateTime 列迁移到 DateTimeOffset 2021-01-01
- 需要 MySQL 5.1 中的抽象触发器来更新审计日志 2021-01-01
- 是否可以执行按位分组功能? 2021-01-01
- SSMS 中的权限问题:“对象 'extended_properties'、数据库 'mssqlsystem_resource'、... 错误 229)上的 SELECT 权限被拒绝" 2022-01-01
- SQL Server 实例在登录协商期间返回无效或不受支持的协议版本 2021-01-01
