Sql 选择更多行作为列
我有一个MySQL问题 我希望将下一次查询的结果放入一个var中,并使用它更新到触发器中,我正在尝试以逗号分隔名称 查询返回多行Sql 选择更多行作为列,sql,mysql,database,triggers,Sql,Mysql,Database,Triggers,我有一个MySQL问题 我希望将下一次查询的结果放入一个var中,并使用它更新到触发器中,我正在尝试以逗号分隔名称 查询返回多行 SELECT t.naam FROM trefwoorden t INNER JOIN organisaties_has_trefwoorden AS o ON (t.id_trefwoorden = o.id_trefwoorden) WHERE o.id_organisaties = NEW.id_organisaties; 这是扳机 CREATE T
SELECT t.naam
FROM trefwoorden t
INNER JOIN organisaties_has_trefwoorden AS o ON (t.id_trefwoorden = o.id_trefwoorden)
WHERE o.id_organisaties = NEW.id_organisaties;
这是扳机
CREATE TRIGGER updCheck_After AFTER
UPDATE ON organisaties_has_trefwoorden
FOR EACH row
UPDATE organisaties o
SET o.trefwoorden_flat =
(
SELECT t.naam
FROM trefwoorden t
INNER JOIN organisaties_has_trefwoorden AS o ON (t.id_trefwoorden = o.id_trefwoorden)
WHERE o.id_organisaties = NEW.id_organisaties;
)
WHERE o.id_organisaties = NEW.id_organisaties
问题是,是否可以选择更多行,以1列逗号分隔
还是有其他解决办法
有人提出建议吗
UPDATE organisaties o
SET o.trefwoorden_flat =
(
SELECT GROUP_CONCAT(t.naam SEPARATOR ',')
FROM trefwoorden t
INNER JOIN
organisaties_has_trefwoorden AS o
ON t.id_trefwoorden = o.id_trefwoorden
WHERE o.id_organisaties = NEW.id_organisaties
)
WHERE o.id_organisaties = NEW.id_organisaties