SQL条件插入到

时间:2014-02-11 08:25:44

标签: sql derby

是否可以根据计数条件插入表中(仅使用1个语句)? 我想做这样的事情:

insert into [table] (...) values (...) if select count(*) from [table] < 5

(仅当表项少于5个时插入表中)

3 个答案:

答案 0 :(得分:3)

尝试这样的事情:

insert into [table] (#FIELDS#)
select (#VALUES#) from [table]
where (select count(*) from [table]) < 5
FETCH FIRST ROW ONLY

答案 1 :(得分:1)

您可以尝试这样

insert into [table] (...) values Select (...) from [table] Where count(*) < 5

答案 2 :(得分:0)

在我看来,上述解决方案不包括 group by 命令。它会导致错误。我想你要插入所有小于5的行,但按一些列分组。如果我错了,请纠正我。

例如:我们有表“table”,其行包含“ID”和“name”,我们只想选择并插入名称在表格中重复次数不超过5次的行。

从表中选择*其中的名称(从表组中选择名称,按名称计算(*)&lt; 5)

我还会考虑使用select into命令。祝你好运:)

嗯,我认为我刚刚理解了你的问题,我认为我的答案不是关于它的。无论如何,我希望我的回答对你或其他人有所帮助。