タイトルが示すように、数式を使用して結果を作成しましたが、「所有者」ごとに数式を実行するように分割する必要がありますが、数式を年に分けます。2010年から2019年の日付があります。ここにコードがあります
SELECT * FROM finaltab;
finaltab.OWNER を OWNER として選択し、SUM(finaltab.shares) AS SSUM FROM finaltab WHERE trancode='S' GROUP BY OWNER 年順に並べ替えます。finaltab.OWNER を OWNER として選択し、SUM(finaltab.shares) AS PSUM FROM finaltab WHERE trancode='P' GROUP BY OWNER 年順に並べ替えます。
SELECT finaltab.OWNER, SSUM, PSUM FROM (SELECT finaltab.OWNER AS OWNER, SUM(finaltab.shares) AS SSUM FROM finaltab WHERE trancode='S' GROUP BY OWNER) AS STable INNER JOIN (SELECT finaltab.OWNER AS OWNER, SUM (finaltab.shares) AS PSUM FROM finaltab WHERE trancode='P' GROUP BY OWNER) asS PTable ON (Stable.owner = Ptable.owner);
SELECT STable.OWNER, SSUM, PSUM, (PSUM - SSUM) / (PSUM + SSUM) as "IOF" FROM (SELECT finaltab.OWNER as OWNER, SUM(finaltab.shares) AS SSUM from finaltab WHERE trancode='S' GROUP BY OWNER) AS STable INNER JOIN (SELECT finaltab.OWNER as OWNER, SUM(finaltab.shares) AS PSUM from finaltab WHERE trancode='P' GROUP BY OWNER) AS PTable ON (STable.OWNER = PTable.OWNER);
これがテーブルです。また、「IOF」または式を取り、それを分子に「IOF」の絶対値を含む式に実装したい場合は、何らかの指示が必要です。ありがとう[1]: https://i.stack.imgur.com/P9GtU.png