如何使用另一列的子字符串值更新每一行的列?

时间:2017-07-10 11:33:57

标签: sql postgresql

我正在尝试从列'data_sent'中获取某个值,然后使用此值更新列'registry'。但是要解决问题。

以下查询:

update can_data 
set registry = (SELECT cast(SUBSTR(split_part(data_sent, 
'registry>', 2), 1, 26) as numeric) 
as registry FROM can_data);

SQL错误:

  

错误:用作子查询的子查询返回多行   表达
  **********错误**********

     

错误:用作表达式的子查询返回多行   SQL状态:21000

1 个答案:

答案 0 :(得分:0)

您不需要子查询。所有你需要的是:

set registry = cast(SUBSTR(split_part(data_sent, 
'registry>', 2), 1, 26) as numeric