当前使用MySQL数据库
想要为另一个
table (t_2)
的 where 条件中的每个匹配条目在 table (t_1)
中插入新行。
我还想为每个条目包含来自单独表的计数值(来自表计数器的计数)以及每个条目的字符串值“减少”。不知道如何解决这个问题,这就是我到目前为止所拥有的:
INSERT INTO t_2(count,id,val='decrease')
SELECT MAX(count) as count FROM counter
SELECT id FROM t_1 WHERE val < 0
我收到的错误是:
1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在 '='decrease' 附近使用的正确语法) SELECT count FROM counter SELECT id FROM t_1 WHERE val < 0' at line 1
我知道我可能不应该有
val='decrease'
,但只是想说明我希望它是为每个新行插入的字符串值。
试试这个:
INSERT INTO t_2 (count,id,val)
SELECT
(SELECT MAX(count) FROM counter),
t_1.id,
'decrease'
FROM t_1
WHERE val < 0,
这是您要找的吗?
INSERT INTO t_2(count,id,val)
SELECT (SELECT MAX(count) as count FROM counter) as count, id, 'decrease' as val
FROM t_1
WHERE val < 0