我有两列,post_content
和postmeta_value
。我需要选择以<i>
开头并以</i>
列中的post_content
结尾的字符串的第一个实例,然后将该值插入postmeta_value
。
答案 0 :(得分:0)
您可以使用反斜杠来转义LIKE
子句中的特殊字符。因此,如果要查找具有以该值开头并以该值开头的列的行,请尝试以下操作:
SELECT *
FROM myTable
WHERE post_content LIKE '<i>%</i>';
看起来很难读,所以让我为你解读。正面和背面的单引号是您要搜索的字符串的终止引号。 <i>
和</i>
的每次出现都在搜索标记。中间的通配符(%)将匹配0个或更多字符,这意味着如果一行只是<i></i>
,它将是包括在内。
以下是SQL Fiddle示例。
完成后,可以在insert语句中使用select子句:
INSERT INTO myTable (postmeta_value) SELECT ...
答案 1 :(得分:0)
如果只想要1行,那么可以添加限制1来限制查询只返回1行。
INSERT INTO yourTable (postmeta_value)
SELECT post_content FROM yourTable WHERE post_content LIKE '<i>%</i>' limit 1;