Fix SecurityMaster for Feed Statistics. Code cleanup.

This commit is contained in:
2025-02-15 16:41:03 -05:00
parent 9731fa10b2
commit 9cefbf8bf2

View File

@@ -1,5 +1,4 @@
using System;
using System.Collections.Generic;
using System.Text;
using MySql.Data.MySqlClient;
using MarketData.MarketDataModel;
@@ -39,7 +38,8 @@ namespace MarketData.DataAccess
sb.Append("SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED ;select 'Splits' description,count(*), modified from splits group by 3 order by modified desc");
break;
case FeedStatistic.FeedStatisticType.SECURITY_MASTER:
sb.Append("SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED ;select 'Security Master' description,count(*), date(create_date) from securitymaster group by 3 order by create_date desc");
// sb.Append("SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED ;select 'Security Master' description,count(*), date(create_date) from securitymaster group by 3 order by create_date desc");
sb.Append("SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED ;select 'Security Master' description,count(*), date(create_date) from securitymaster group by 3 order by 3 desc");
break;
case FeedStatistic.FeedStatisticType.SEC_FILINGS:
sb.Append("SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED ;select 'SEC Filings' description,count(*), filing_date from secfilings group by 3 order by filing_date desc");
@@ -136,32 +136,6 @@ namespace MarketData.DataAccess
{
StringBuilder sb = new StringBuilder();
sqlConnection = SqlUtils.CreateMySqlConnection(MainDataSource.Instance.LocateDataSource("market_data"));
//sb.Append("set @symbol='").Append(symbol).Append("' COLLATE utf8mb4_unicode_ci ;");
//sb.Append("select A.symbol,A.year,A.total_debt,B.total_stockholder_equity,A.total_debt/B.total_stockholder_equity debt_to_equity from ");
//sb.Append("( ");
//sb.Append("select MIN(f.symbol) symbol,MIN(YEAR(f.asof))year,AVG(f.total_debt)total_debt from fundamentals f where symbol=@symbol ");
//sb.Append("group by YEAR(f.asof)order by asof asc ");
//sb.Append(")A ");
//sb.Append("left join ");
//sb.Append("( ");
//sb.Append("select MIN(bs.symbol)symbol,MIN(YEAR(bs.asof)) year,AVG(bs.total_stockholder_equity) total_stockholder_equity from balancesheet bs where symbol=@symbol and period=0 ");
//sb.Append("group by YEAR(bs.asof) asc ");
//sb.Append(")B ");
//sb.Append("on A.symbol=B.symbol and A.year=B.year order by 2 asc");
//sb.Append("set @symbol='").Append(symbol).Append("' COLLATE utf8mb4_unicode_ci ;");
//sb.Append("select A.symbol,A.year,A.total_debt,B.total_stockholder_equity,A.total_debt/B.total_stockholder_equity debt_to_equity from ");
//sb.Append("( ");
//sb.Append("select MIN(f.symbol) symbol,MIN(YEAR(f.asof))year,AVG(f.total_debt)total_debt from fundamentals f where symbol=").Append(SqlUtils.ToSqlString(symbol));
//sb.Append(" group by YEAR(f.asof) order by 2 asc ");
//sb.Append(")A ");
//sb.Append("left join ");
//sb.Append("( ");
//sb.Append("select MIN(bs.symbol)symbol,MIN(YEAR(bs.asof)) year,AVG(bs.total_stockholder_equity) total_stockholder_equity from balancesheet bs where symbol=").Append(SqlUtils.ToSqlString(symbol)).Append(" and period=0 ");
//sb.Append("group by YEAR(bs.asof) order by 2 asc ");
//sb.Append(")B ");
//sb.Append("on A.symbol=B.symbol and A.year=B.year order by 2 asc");
sb.Append("set @symbol='").Append(symbol).Append("';");
sb.Append("select A.symbol,A.year,A.total_debt,B.total_stockholder_equity,A.total_debt/B.total_stockholder_equity debt_to_equity from ");
sb.Append("( ");
@@ -175,8 +149,6 @@ namespace MarketData.DataAccess
sb.Append(")B ");
sb.Append("on A.symbol=B.symbol and A.year=B.year order by 2 asc");
strQuery = sb.ToString();
sqlCommand = new MySqlCommand(strQuery, sqlConnection);
sqlCommand.CommandTimeout = SqlUtils.COMMAND_TIMEOUT;
@@ -233,29 +205,6 @@ namespace MarketData.DataAccess
{
StringBuilder sb = new StringBuilder();
sqlConnection = SqlUtils.CreateMySqlConnection(MainDataSource.Instance.LocateDataSource("market_data"));
//sb.Append("SET @symbol='").Append(symbol).Append("' COLLATE utf8mb4_unicode_ci ;");
//sb.Append("select A.symbol,A.year,A.eps,B.cash_amount,B.records,(B.cash_amount/A.eps)*100.00 as dividend_load_pct from ");
//sb.Append(" (select MIN(h.symbol) symbol,MIN(YEAR(h.asof)) year,min(h.value) eps from historical h ");
//sb.Append(" where h.symbol=@symbol and h.type='eps' ");
//sb.Append(" group by YEAR(h.asof))A ");
//sb.Append(" inner join ( ");
//sb.Append(" select MIN(symbol) symbol,sum(dh.cash_amount) cash_amount,count(*) records,YEAR(dh.payment_date) year from dividendhistory dh ");
//sb.Append(" where dh.symbol=@symbol group by 4 ");
//sb.Append(" )B ");
//sb.Append(" on A.symbol=B.symbol and A.year=B.year ");
//sb.Append(" order by 2 desc");
//sb.Append("select A.symbol,A.year,A.eps,B.cash_amount,B.records,(B.cash_amount/A.eps)*100.00 as dividend_load_pct from ");
//sb.Append(" (select MIN(h.symbol) symbol,MIN(YEAR(h.asof)) year,min(h.value) eps from historical h ");
//sb.Append(" where h.symbol=").Append(SqlUtils.ToSqlString(symbol)).Append(" and h.type='eps' ");
//sb.Append(" group by YEAR(h.asof))A ");
//sb.Append(" inner join ( ");
//sb.Append(" select MIN(symbol) symbol,sum(dh.cash_amount) cash_amount,count(*) records,YEAR(dh.payment_date) year from dividendhistory dh ");
//sb.Append(" where dh.symbol=").Append(SqlUtils.ToSqlString(symbol)).Append(" group by 4 ");
//sb.Append(" )B ");
//sb.Append(" on A.symbol=B.symbol and A.year=B.year ");
//sb.Append(" order by 2 desc");
sb.Append("SET @symbol='").Append(symbol).Append("';");
sb.Append("select A.symbol,A.year,A.eps,B.cash_amount,B.records,(B.cash_amount/A.eps)*100.00 as dividend_load_pct from ");
sb.Append(" (select MIN(h.symbol) symbol,MIN(YEAR(h.asof)) year,min(h.value) eps from historical h ");
@@ -268,7 +217,6 @@ namespace MarketData.DataAccess
sb.Append(" on A.symbol=B.symbol and A.year=B.year ");
sb.Append(" order by 2 desc");
strQuery = sb.ToString();
sqlCommand = new MySqlCommand(strQuery, sqlConnection);
sqlCommand.CommandTimeout = SqlUtils.COMMAND_TIMEOUT;