Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 在DB2中替换查询格式_Sql_Db2 - Fatal编程技术网

Sql 在DB2中替换查询格式

Sql 在DB2中替换查询格式,sql,db2,Sql,Db2,我在一列中存储了一组json格式,现在我需要替换一个特定的单词。如何使用replace查询。每次我使用它,我都会得到令牌异常。请告知。我使用的是DB2 我有三个专栏 Name Age Data ABD 15 [{"Name":"ABC","type":"Regular","Math":18}] 在数据列中,我需要替换“type”,它应该是StudentType REPLACE(Data,'type','StudentType'); 这不起作用。怎么做 提前多谢就像@m

我在一列中存储了一组json格式,现在我需要替换一个特定的单词。如何使用replace查询。每次我使用它,我都会得到令牌异常。请告知。我使用的是DB2 我有三个专栏

Name    Age   Data
ABD      15   [{"Name":"ABC","type":"Regular","Math":18}]
在数据列中,我需要替换“type”,它应该是StudentType

REPLACE(Data,'type','StudentType');
这不起作用。怎么做


提前多谢

就像@mustacio指出的那样,如果您在select语句中使用
REPLACE
,它只会使用
'StudentType'
而不是
'type>返回您的数据。这实际上不会更改数据库中的数据。如果要更新数据,需要
update
语句

UPDATE MyTable
SET MyColumn = REPLACE(MyColumn,'OldString','NewString')

正如@mustaccio所指出的,如果您在select语句中使用
REPLACE
,它将只返回
'StudentType'
而不是
'type'
的数据。这实际上不会更改数据库中的数据。如果要更新数据,需要
update
语句

UPDATE MyTable
SET MyColumn = REPLACE(MyColumn,'OldString','NewString')

正如@mustaccio所指出的,如果您在select语句中使用
REPLACE
,它将只返回
'StudentType'
而不是
'type'
的数据。这实际上不会更改数据库中的数据。如果要更新数据,需要
update
语句

UPDATE MyTable
SET MyColumn = REPLACE(MyColumn,'OldString','NewString')

正如@mustaccio所指出的,如果您在select语句中使用
REPLACE
,它将只返回
'StudentType'
而不是
'type'
的数据。这实际上不会更改数据库中的数据。如果要更新数据,需要
update
语句

UPDATE MyTable
SET MyColumn = REPLACE(MyColumn,'OldString','NewString')

您可以添加令牌异常的示例吗?您的用法似乎正确:[错误代码:-104,SQL状态:42601]DB2SQL错误:SQLCODE=-104,SQLSTATE=42601,SQLERRMC=replace;语句开头;,DRIVER=4.15.82为完整起见,DB2的哪个平台/版本?在iSeries上,
SQLCODE=-104
表示“未找到”。您的完整
UPDATE
语句是什么(或者至少是再现错误的最小大小)?顺便说一句,存储年龄是有问题的,因为你必须每年更新它(而且你不知道什么时候……。
REPLACE()
不是一个查询;例如,它是一个可以在
UPDATE
语句中使用的函数。您可以添加令牌异常的示例吗?您的用法似乎正确:[错误代码:-104,SQL状态:42601]DB2SQL错误:SQLCODE=-104,SQLSTATE=42601,SQLERRMC=replace;语句开头;,DRIVER=4.15.82为完整起见,DB2的哪个平台/版本?在iSeries上,
SQLCODE=-104
表示“未找到”。您的完整
UPDATE
语句是什么(或者至少是再现错误的最小大小)?顺便说一句,存储年龄是有问题的,因为你必须每年更新它(而且你不知道什么时候……。
REPLACE()
不是一个查询;例如,它是一个可以在
UPDATE
语句中使用的函数。您可以添加令牌异常的示例吗?您的用法似乎正确:[错误代码:-104,SQL状态:42601]DB2SQL错误:SQLCODE=-104,SQLSTATE=42601,SQLERRMC=replace;语句开头;,DRIVER=4.15.82为完整起见,DB2的哪个平台/版本?在iSeries上,
SQLCODE=-104
表示“未找到”。您的完整
UPDATE
语句是什么(或者至少是再现错误的最小大小)?顺便说一句,存储年龄是有问题的,因为你必须每年更新它(而且你不知道什么时候……。
REPLACE()
不是一个查询;例如,它是一个可以在
UPDATE
语句中使用的函数。您可以添加令牌异常的示例吗?您的用法似乎正确:[错误代码:-104,SQL状态:42601]DB2SQL错误:SQLCODE=-104,SQLSTATE=42601,SQLERRMC=replace;语句开头;,DRIVER=4.15.82为完整起见,DB2的哪个平台/版本?在iSeries上,
SQLCODE=-104
表示“未找到”。您的完整
UPDATE
语句是什么(或者至少是再现错误的最小大小)?顺便说一句,存储年龄是有问题的,因为你必须每年更新它(而且你不知道什么时候……。
REPLACE()
不是一个查询;例如,它是一个可以在
UPDATE
语句中使用的函数。我还将使搜索表达式
“type”:“
和替换表达式
”StudentType:“
这将防止名称中的文本
'type'
或其他属性被错误替换。我还将使搜索表达式
'“type”:“
和替换表达式
'“StudentType”:“
这将防止名称中的文本
'type'
或其他属性被错误替换。我还将使搜索表达式
'“type”:“
和替换表达式
'“StudentType”:“
这将防止名称中的文本
'type'
或其他属性被错误替换。我还将使搜索表达式
'“type”:“
和替换表达式
'“StudentType”:“
这将防止姓名中的文本
'type'
或其他属性被错误替换。