忽略insert中的一些值从sql语句中选择

时间:2010-03-18 15:16:01

标签: sql select insert

假设我有一个表符号(符号,值)和一个表符号值(符号,值),其中包含符号值的列表。 如何从SymbolValues表中选择最大值并插入到Symbols表中。 例如,SymbolValues表具有以下值

A 1
A 2
A 3
B 6
B 7

然后只应在符号表中插入A 3和B 7。

使用insert into select语句是否可行。

由于

2 个答案:

答案 0 :(得分:5)

这样的事情:

insert into symbols(symbol,value)
  (select symbol, max(value) from symbolvalues group by symbol);

答案 1 :(得分:2)

您可以将选择查询修改为:

SELECT v.symbol, v.value
FROM SymbolValues v
WHERE NOT EXISTS (SELECT * FROM SymbolValues v2 WHERE v2.symbol = v.symbol AND v2.value > v.value)
相关问题