久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

根據兩個數據庫表之間的數據比較創建oracle視圖

create oracle view based on comparision of data between two database tables(根據兩個數據庫表之間的數據比較創建oracle視圖)
本文介紹了根據兩個數據庫表之間的數據比較創建oracle視圖的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

限時送ChatGPT賬號..

我有下表:

  • 我想創建視圖,以便對于 descr = 'O' 和兩個表中的公共 id_isin 字段值,檢查 ratio字段并僅取 ratio 字段值較低的行.
  • 對于 descr = 'O' 并且如果 id_isin 存在于一個表中但不在另一個表中,則取那些行(雙向)
  • 對于 descr != 'O',從表 IS_ID_TST 中取出所有這些行.
  • I want to create View such that for descr = 'O' and for common id_isin field value from both tables, check the ratio field and take only the row where ratio field value is low.
  • for descr = 'O' and if the id_isin exist in one table but not in another then take those rows(bidirectional)
  • For all the rows where descr ! = 'O', take all those rows from table IS_ID_TST.

以下是視圖的預期輸出,例如:

Below is the expected output from view for example:

ID_ISIN   QUOTE_CRNY   DESCR           RATIO              ALLOCATIONASSETTYPE
L000123    USD              O              0.0769          Other total
L000129    USD              O              0.0669          Other total
D123458    USD              O              0.64039         Other total
M123456    USD              O              5.64039         Other total
F563458    USD              C              0.84039         Other total
G123456    USD              null           0.04039         Other total
L000123    USD              C              5.0769          Other total

我可以根據這個條件創建視圖嗎?

Can i create View based on this conditions ?

推薦答案

我提出了以下查詢,請檢查我已對查詢發表評論.詢問是否不符合您的要求或進行任何澄清.

I have come up with below query, Please check I have put comments on the query. Ask if doesn't meet you r requirement or for any clarification.

CREATE VIEW v_combined_data AS
WITH combined_data
AS
(
SELECT t1.fund_isin
      ,t1.fund_quote_crny
      ,t1.member_descr
      ,t1.member_ratio
      ,t1.allocationassettype
      ,t2.fund_isin fund_isin_tst
      ,t2.fund_quote_crny fund_quote_crny_tst
      ,t2.member_descr member_descr_tst
      ,t2.member_ratio member_ratio_tst
      ,t2.allocationassettype allocationassettype_tst
FROM   is_id t1
FULL   OUTER JOIN is_id_tst t2
ON     t1.fund_isin = t2.fund_isin
AND    t1.fund_quote_crny = t2.fund_quote_crny
AND    t1.member_descr = t2.member_descr
)
-- for member_descr = 'O' and for common fund_isin field value from both tables, 
-- check the member_ratio field and take only the row where member_ratio field value is low.
SELECT d.fund_isin
      ,d.fund_quote_crny
      ,d.member_descr
      ,LEAST(d.member_ratio,d.member_ratio_tst) member_ratio
      ,d.allocationassettype
  FROM combined_data d
WHERE d.member_descr = 'O'
  AND d.fund_isin IS NOT NULL 
  AND d.fund_isin_tst IS NOT NULL
UNION ALL
--for member_descr = 'O' and if the fund_isin exist in one table but not in another then take those rows(bidirectional)
--exists in IS_ID and not in IS_ID_TST
SELECT d.fund_isin
      ,d.fund_quote_crny
      ,d.member_descr
      ,d.member_ratio
      ,d.allocationassettype
  FROM combined_data d
WHERE d.member_descr = 'O'
  AND NOT EXISTS (SELECT 1
                    FROM combined_data ci
                   WHERE ci.fund_isin_tst = d.fund_isin
                     AND ci.fund_quote_crny_tst = d.fund_quote_crny
                     AND ci.member_descr_tst = 'O')
UNION ALL
--for member_descr = 'O' and if the fund_isin exist in one table but not in another then take those rows(bidirectional)
--exists in IS_ID_TST and not in IS_ID
SELECT d.fund_isin_tst
      ,d.fund_quote_crny_tst
      ,d.member_descr_tst
      ,d.member_ratio_tst
      ,d.allocationassettype_tst
  FROM combined_data d
WHERE d.member_descr_tst = 'O'
  AND NOT EXISTS (SELECT 1
                    FROM combined_data ci
                   WHERE ci.fund_isin = d.fund_isin_tst
                     AND ci.fund_quote_crny = d.fund_quote_crny_tst
                     AND ci.member_descr = 'O')
UNION ALL
--for all the rows where member_descr ! = 'O', take all those rows from table IS_ID_TST
SELECT d.fund_isin_tst
      ,d.fund_quote_crny_tst
      ,d.member_descr_tst
      ,d.member_ratio_tst
      ,d.allocationassettype_tst
  FROM combined_data d
WHERE d.fund_isin_tst IS NOT NULL
  AND (d.member_descr_tst != 'O' OR d.member_descr_tst IS NULL);

這篇關于根據兩個數據庫表之間的數據比較創建oracle視圖的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

What SQL Server Datatype Should I Use To Store A Byte[](我應該使用什么 SQL Server 數據類型來存儲字節 [])
Interpreting type codes in sys.objects in SQL Server(解釋 SQL Server 中 sys.objects 中的類型代碼)
Typeorm Does not return all data(Typeorm 不返回所有數據)
Typeorm .loadRelationCountAndMap returns zeros(Typeorm .loadRelationCountAndMap 返回零)
How to convert #39;2016-07-01 01:12:22 PM#39; to #39;2016-07-01 13:12:22#39; hour format?(如何將“2016-07-01 01:12:22 PM轉換為“2016-07-01 13:12:22小時格式?)
MS SQL: Should ISDATE() Return quot;1quot; when Cannot Cast as Date?(MS SQL:ISDATE() 是否應該返回“1?什么時候不能投射為日期?)
主站蜘蛛池模板: av黄色在线观看 | 97精品一区二区 | 在线看91 | 成人一区二区电影 | 99精品国产一区二区青青牛奶 | 国产精品中文字幕在线播放 | 在线观看亚洲一区二区 | 资源首页二三区 | 亚洲精品久久久久中文字幕欢迎你 | 天天插天天搞 | 五月婷婷在线视频 | 国产激情亚洲 | 天堂成人国产精品一区 | av在线免费播放 | 欧美午夜精品久久久久免费视 | 97超碰人人草 | 国产精品久久9 | 国产成人精品免高潮在线观看 | 伊人精品久久久久77777 | 国产中的精品av涩差av | 欧美淫片 | 久久久国产一区 | 日日摸夜夜爽人人添av | 久久久久久久久久久久久久av | 成人不卡 | 中文字幕亚洲欧美日韩在线不卡 | 久久综合一区 | 欧美一区二不卡视频 | 亚洲电影一区二区三区 | 国产精品二区三区 | 亚洲视频免费观看 | 国产精品一区在线 | 中文字幕av高清 | 成人精品一区二区三区四区 | 国产在线观看一区二区三区 | 午夜影院黄| 一区二区精品视频 | 在线观看第一页 | 成人精品一区亚洲午夜久久久 | 欧美日本亚洲 | 久久久久久综合 |