选择行中所有列的数据作为表中的单个字符串

时间:2017-07-03 15:09:55

标签: mysql sql concat

我有一个表,它存储了所有其他表中的所有已删除/更新的数据。

CREATE TABLE `delete_log` (
    `id` SMALLINT UNSIGNED ZEROFILL NOT NULL AUTO_INCREMENT,
    `data` TEXT NOT NULL 
)

每当我从任何其他表(具有不同的不同列)中删除/更新数据时,我想在delete_log中插入行数据,如下面的查询..

INSERT INTO delete_log (data) values (SELECT all_data_from_this_row_as_string FROM tableXYZ where id = :id);
DELETE FROM tableXYZ where id = :id;

现在我正在使用CONCAT(col1,',',col2,',',col3 ...)但这种方法很长,因为我必须写不同查询所有其他表,因为它们的列名和计数不同。

任何人都可以帮我在所有表的单个INSERT查询中执行此操作..?提前致谢

0 个答案:

没有答案