我试图做一个MySQL程序,它会将数据插入到表中,如果同一个表的count(*)少于5行。INSERT INTO table IF count(*)<5
的逻辑是:
Declare @count INT;
SET @count = (SELECT COUNT(*) FROM table);
IF (@count = 1)
INSERT INTO table(item1, item2, item3) VALUES('item 1', 'item 2', 'item 3');
我试图做一个MySQL程序,它会将数据插入到表中,如果同一个表的count(*)少于5行。INSERT INTO table IF count(*)<5
的逻辑是:
Declare @count INT;
SET @count = (SELECT COUNT(*) FROM table);
IF (@count = 1)
INSERT INTO table(item1, item2, item3) VALUES('item 1', 'item 2', 'item 3');
你缺少的代码块正确的语法。 它应该包含BEGIN .. END
和IF ... THEN .. END IF
块。
例:
BEGIN
Declare @count INT;
SET @count = (SELECT COUNT(*) FROM table);
IF (@count = 1) THEN
INSERT INTO table(item1, item2, item3) VALUES('item 1', 'item 2', 'item 3');
END IF;
END;
如果要插入,只有当计数小于5则,
变化:
IF (@count = 1) THEN
要:
IF (@count < 5) THEN
我在“IF(@count = 1)THEN”行出现错误: 您的SQL语法错误;检查与您的MySQL服务器版本相对应的手册,以在'IF(@broj IS NULL)THEN'附近使用正确的语法。 –
对不起,sql代码需要在触发器或过程中运行。它可以作为一个简单的查询。 该代码完美无缺,“Declare @count INT;”线。 –
什么是th错误? –