PostgreSQL【SQL 01】根据条件更新字段值或追加信息STRPOS(string, substring)函数使用及LIKE函数对比
warning:
这篇文章距离上次修改已过423天,其中的内容可能已经有所变动。
问题描述不是很清晰,但我猜你可能想要使用PostgreSQL中的strpos函数来找出一个字符串是否包含在另一个字符串中,并根据这个条件来更新或追加信息。
在PostgreSQL中,strpos函数不存在,但是可以使用position函数来获取子字符串在字符串中的位置,如果返回的结果大于0,则表示子字符串存在于字符串中。
以下是一个使用position函数来更新或追加信息的例子:
UPDATE your_table
SET your_column = CASE
WHEN position('your_substring' IN your_column) > 0 THEN
-- 如果子字符串存在,则不更新
your_column
ELSE
-- 如果子字符串不存在,则追加子字符串
your_column || 'your_substring'
END
WHERE your_condition;在这个例子中,your_table是你要更新的表,your_column是你要更新的列,your_substring是你要查找的子字符串,your_condition是更新条件。
如果你的意思是要找到包含特定子串的记录,并对这些记录进行更新或追加信息,那么可以使用WHERE子句来实现:
UPDATE your_table
SET your_column = your_column || 'your_substring'
WHERE position('your_substring' IN your_column) > 0;在这个例子中,只有那些your_column字段中包含your_substring的记录会被更新。
评论已关闭