【发布时间】:2021-12-17 15:40:03
【问题描述】:
我有一个在数据库中生成新用户的函数。 我想检查电子邮件地址是否包含任何引号,如果包含,我想复制它们。
例如,我有以下电子邮件地址:test.o'test@test.com,我想将其转换为 test.o''test@test.com。
有人可以帮我解决这个问题吗? 谢谢
【问题讨论】:
标签: sql postgresql sql-function
我有一个在数据库中生成新用户的函数。 我想检查电子邮件地址是否包含任何引号,如果包含,我想复制它们。
例如,我有以下电子邮件地址:test.o'test@test.com,我想将其转换为 test.o''test@test.com。
有人可以帮我解决这个问题吗? 谢谢
【问题讨论】:
标签: sql postgresql sql-function
假设您只期望一个单引号(而不是双引号或更多),您可以尝试使用简单的替换:
UPDATE yourTable
SET email = REPLACE(email, '''', '''''');
【讨论】:
REPLACE(email, "'", "''")
:-) 上引用你...双引号可能不被所有 SQL 引擎支持,所以我试着给出一个尽可能对 ANSI 友好的答案。
"'" 读取为列名吗?
WHERE email LIKE '%''%',以减少交易规模。