aboutsummaryrefslogtreecommitdiffstats
path: root/sql/et_tables.sql
diff options
context:
space:
mode:
Diffstat (limited to 'sql/et_tables.sql')
-rw-r--r--sql/et_tables.sql15
1 files changed, 13 insertions, 2 deletions
diff --git a/sql/et_tables.sql b/sql/et_tables.sql
index 999120ab..7503521d 100644
--- a/sql/et_tables.sql
+++ b/sql/et_tables.sql
@@ -355,7 +355,7 @@ CREATE OR REPLACE FUNCTION et_cusip_details(p_cusips VARIADIC varchar(10)[])
d.subordination, d.thickness
FROM cusip_universe a LEFT JOIN latest_clo_universe b
ON a.dealname = b.dealname
- LEFT JOIN et_deal_model_numbers e
+ LEFT JOIN latest_deal_model_numbers e
ON a.dealname = e.dealname
RIGHT JOIN (SELECT unnest($1) AS cusip, generate_subscripts(p_cusips, 1) AS id) c
ON c.cusip = a.cusip LEFT JOIN et_model_numbers d ON d.cusip = c.cusip ORDER BY c.id;
@@ -434,7 +434,9 @@ CREATE TABLE et_deal_model_numbers(
cdopercentage float,
stalepercentage float,
dealspread float,
- PRIMARY KEY(dealname)
+ marketvalue float,
+ updatedate date,
+ PRIMARY KEY(dealname, updatedate)
);
CREATE TABLE et_cusip_model_numbers(
@@ -447,3 +449,12 @@ CREATE TABLE et_cusip_model_numbers(
GRANT ALL ON et_deal_model_numbers TO et_user;
GRANT ALL ON et_cusip_model_numbers TO et_user;
+
+
+CREATE VIEW latest_deal_model_numbers AS
+ SELECT b.*
+ FROM (SELECT MAX(updatedate) AS latestdate, dealname FROM et_deal_model_numbers GROUP BY dealname) a
+ JOIN et_deal_model_numbers b ON a.dealname = b.dealname AND a.latestdate= b.updatedate
+ ORDER by dealname asc;
+
+GRANT ALL ON latest_deal_model_numbers TO et_user;