【发布时间】:2017-07-21 11:48:21
【问题描述】:
我有一个test2 表,它是这样创建的:
CREATE TABLE test2(
name VARCHAR(20),
time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP
);
现在我只想在表中存储 5 行。因此,每次我添加数据时,它都会检查行数是否 = 5,然后它会删除最旧的数据并添加新数据,否则它只会添加数据。代码如下:
IF(COUNT(name) FROM test2 >= "5")
THEN
(DELETE FROM test2 WHERE time = MIN(time) AND (INSERT INTO test2 (name)
VALUE('icecream')));
ELSE
(INSERT INTO test2(name) VALUE('icecream'))
END IF;
但此代码格式在 IF 和 ELSE 语句上显示 2 个错误。重新格式化它以获得正确的输出。
【问题讨论】:
-
那么“user”和这个表结构有什么关系呢?
-
为了简单起见,现在完美地编辑了表格结构。
-
将 ` => 5` 替换为 ` >= 5 `
-
那些单引号是“name”吗?他们不应该在列名周围
-
已编辑,但 IF ELSE 仍以红线显示。