使用选择结果替换字符串

斯卡林

我有一个表,需要将经节表中的值连接到章节表中。仅当诗句字段值以脱字号('^')开头时,才应执行此操作。它们都共享entity_id列。

我进行了以下选择查询,并得到了我需要的值:

SELECT 
chapter.field_bible_chapter_value,
verse.field_bible_verse_value,
verse.entity_id
FROM field_data_field_bible_verse AS verse
INNER JOIN field_data_field_bible_chapter AS chapter
ON chapter.entity_id = verse.entity_id
WHERE verse.field_bible_verse_value LIKE '^%'
ORDER BY verse.entity_id

现在,我被困在尝试使用这些数据对Chapter字段进行实际更改。

我应该如何处理?

细胞

如果我正确理解需求,请尝试以下sql:

UPDATE field_data_field_bible_verse AS verse
INNER JOIN field_data_field_bible_chapter AS chapter
ON chapter.entity_id = verse.entity_id
SET chapter.field_bible_chapter_value = concat(verse.field_bible_verse_value,' ',chapter.field_bible_chapter_value)
WHERE verse.field_bible_verse_value LIKE '^%'

逻辑如下:

IF entity_id is equal THEN
    IF the verse_value starts with '^' THEN
       Concatenate verse value with chapter value
       Replace chapter value with the concatenated value

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章