select字段列表中无法使用计算出来的值进行再次计算

select字段列表中无法使用计算出来的值进行再次计算

结论:在select列表中无法直接使用计算得到的字段,进行再次计算。

单独执行如下语句,可以执行成功

> select CURRENT_TIMESTAMP as ts;
+--------------------------+
|            ts            |
+--------------------------+
| 2021-09-03 05:30:10.983  |
+--------------------------+

单独执行如下语句,可以执行成功

> select unix_timestamp('2021-09-03 05:30:10.983');
+-------------+
|     _c0     |
+-------------+
| 1630647010  |
+-------------+

但是执行如下语句则会报错,提示ts示无效的

> select CURRENT_TIMESTAMP as ts,unix_timestamp(ts);
Error: Error while compiling statement: FAILED: SemanticException [Error 10004]: Line 1:46 Invalid table alias or column reference 'ts': (possible column names are: ) (state=42000,code=10004)

通过子查询进行,ts可以正常使用。

select unix_timestamp(a.ts) from(select CURRENT_TIMESTAMP as ts) a;
+-------------+
|     _c0     |
+-------------+
| 1630647296  |
+-------------+
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值