如何在同一个表中组合两个记录

时间:2014-03-14 00:50:41

标签: sql

我有下表:

Table 1

该表按option_dateOption_symboloption_expire_monthoption_strike分组。对于那些具有相同执行价格的记录,我想将它们组合起来。所以在上面的表格中,合并时的记录2和3看起来像这样:

Table 2

请注意,对于每个包含option_type = C的记录,option_put_volume的值为0.对于每个包含option_type = P的记录,option_call_volume的值为0

我对这些东西很新,所以任何帮助都会非常感激。

2 个答案:

答案 0 :(得分:1)

我猜您基本上想要对行进行分组,您可以使用group by query进行分组。标识要分组的所有列,并在select子句中使用它们。对于option_call_volume和option_put_volume,您可以将它们相加。

你可以这样做:

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

答案 1 :(得分:0)

您可以在SQL语句基础上使用关键字分组依据来分组。 您可以使用select Case 关键字根据您的条件生成值。

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

GROUP BY - SQL Keyword

CASE - SQL Keyword