oracle中的sql:select t.TREASURY_BRANCH_CD,t.TRADE_ID,r.INT_RT ASOF_RATE ,t.MATURITY_DT,r.PERIOD_START_DT,r.PERIOD_END_DT, TRUNC(TO_NUMBER(t.MATURITY_DT-b.CUR_SYSTEM_DT)) ASOF_TERM from AFF_TRADE_TRX t, AFF_INT_RESET_TRX r,ATI_TREASURY_BRANCH b;改成PG数据库
时间: 2023-08-15 08:04:37 浏览: 184
Treasury & Risk Management _ Analysers.pptx
在Oracle中,你使用的是一个简单的SELECT语句来从多个表中检索数据。在PostgreSQL中,可以使用相同的语法来实现相同的功能。要将上述Oracle语句转换为PostgreSQL语法,可以使用以下方式:
```sql
SELECT t.TREASURY_BRANCH_CD, t.TRADE_ID, r.INT_RT AS ASOF_RATE, t.MATURITY_DT, r.PERIOD_START_DT, r.PERIOD_END_DT,
EXTRACT(DAY FROM (t.MATURITY_DT - b.CUR_SYSTEM_DT)) AS ASOF_TERM
FROM AFF_TRADE_TRX t, AFF_INT_RESET_TRX r, ATI_TREASURY_BRANCH b;
```
请确保将表名和列名替换为你实际的表和列名。
在上述查询中,我们没有使用TRUNC函数来截断日期或将日期转换为数字,因为在PostgreSQL中,日期和数字之间的操作是自动转换的。我们使用了EXTRACT函数来提取日期之间的天数差异。
请注意,这只是一个简单的转换示例。在实际情况下,可能需要根据PostgreSQL的特定语法和数据类型进行调整。
阅读全文