Sql 如何在同一个表中合并两条记录

Sql 如何在同一个表中合并两条记录,sql,Sql,我有下表: 该表按选项日期,选项符号,选项到期月和选项罢工进行分组。对于那些具有相同执行价的记录,我想将它们合并。所以在我上面的表格中,记录2和记录3组合起来时会像这样: Select option_date, option_symbol, option_price, option_expire_month, option_strike, sum(option_call_volume), sum(option_put_volume) from table group by option_d

我有下表:

该表按
选项日期
选项符号
选项到期月
选项罢工
进行分组。对于那些具有相同执行价的记录,我想将它们合并。所以在我上面的表格中,记录2和记录3组合起来时会像这样:

Select option_date, option_symbol, option_price, option_expire_month, option_strike, sum(option_call_volume), sum(option_put_volume) 
from table 
group by option_date, option_symbol, option_price, option_expire_month, option_strike

请注意,对于每个具有
选项\u type=C
的记录,
选项\u put\u volume
的值为0。对于具有
option\u type=P
的每条记录,
option\u call\u volume
的值为0


我对这方面很陌生,因此非常感谢您的帮助。

我想您基本上希望对行进行分组,这可以使用分组查询来完成。标识所有要分组的列,并在select子句中使用它们。对于期权买入量和期权卖出量,您可以将它们相加

你可以这样做:

Select option_date, option_symbol, option_price, option_expire_month, option_strike, sum(option_call_volume), sum(option_put_volume) 
from table 
group by option_date, option_symbol, option_price, option_expire_month, option_strike

您可以根据要分组的列在SQL语法中使用关键字Group by。 您可以使用selectCase关键字根据您的条件生成值

下面是该SQL关键字的示例链接:


请将您的问题以文本形式而不是图像形式提供实际细节。只有在绝对必要的情况下才能使用图形来说明您的观点。它们不能从中复制和粘贴以创建测试表或数据,并且对带宽有限或位于不允许访问它们的代理服务器后面的用户来说有些不公平。此外,如果由于某种原因链接不可用,您的问题中没有任何内容对本网站的未来用户搜索自己问题的解决方案有用。谢谢。我想我可以把它放进insert语句中,创建一个新表,然后删除我现有的表。这将非常有效。谢谢