为什么在创建视图但更新表列时SPLIT_PART无法工作?

时间:2019-02-05 04:26:00

标签: postgresql view syntax-error

创建视图时没有问题,我一直在使用SPLIT_PART,只是尝试使用相同的语法更新表中的列,但出现此错误:

  

SQL错误[42601]:未终止的字符串文字从位置0开始   在SQL',0))中。预期字符

通过以下sql:

update table1
    set email1 = split_part(emails_combined,';',1);

为什么在创建视图时起作用,而在更新表中的列时却无效?

有没有一种方法可以使它在表中工作?我有一列,其中包含要用分号分隔的电子邮件列表,我想拆分并在每封电子邮件中填充单独的列。

更新-以下是我尝试拆分的列中的数据示例:

    testing@123.net;    
    ;jon@loremipsum.com;jason@sample.net;test@123.com
    jon@loremipsum.com;jason@sample.net;test@123.com
    ;testing@123.net
    ;info@loremipsum.com;misc@random.com;info@stuff.com
    ;  
    jon@loremipsum.com;jason@sample.net;test@123.com

在某些行中,唯一的值是“;”。没有空行。

更新:我随机尝试移动关闭;下一行,SQL工作了。像这样:

   update table1
    set email1 = split_part(emails_combined,';',1)
;

为什么像这样移动结束分号会有所不同?

0 个答案:

没有答案