我有一个表,表1
Table1
ID REG VALUE
1 54 500
2 54 1700
3 60 5000
4 60 5500
现在,我需要将表中的行复制到第二个表Table2中,但是对于具有相同表项的条目,REG
我想在第二个表中进行单行操作,其中最高VALUE
和最低之间是有区别的VALUE
,如下所示:
Table2
ID REG VALUE
1 54 1200
2 60 500
我怎样才能做到这一点?
您可以使用插入选择语句:
INSERT INTO table2 (reg, value)
SELECT reg, MAX(value) - MIN(value)
FROM table1
GROUP BY reg
HAVING COUNT(*) > 1
编辑:
如果还需要复制出现在单行中的值,reg
则可以使用case
表达式来完成:
INSERT INTO table2 (reg, value)
SELECT reg,
CASE COUNT(*) WHEN 1 THEN MAX(value) ELSE MAX(value) - MIN(value) END
FROM table1
GROUP BY reg
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句