这是我的桌子:
CREATE TABLE my_schema.money
(
amount numeric NOT NULL,
rate jsonb
);
和示例数据:
INSERT INTO my_schema.money (amount, rate)
VALUES (
15.7,
'{
"date": "2017-06-25",
"to":
{
"USD": 0.282451842549122,
"GBP": 0.252381738944908
},
"from": "EUR"
}'
);
我正在尝试在数据库中创建一个视图,其中包含列金额和美元汇率对列汇率的倍数,但是没有成功,有什么想法吗?
例如:15.7 * 0.282451842549122 = 4.4344939280212154.
答案 0 :(得分:0)
假设您的视图包括原始列:
create view my_schema.view_name_for_usd
as
select *, amount * (rate->'to'->>'USD')::numeric usd_amount
from my_schema.money