在hive中校验代码:SELECT lv.lookup_type ,cast(lv.lookup_code as int) lookup_code ,lv.meaning ,lv.description ,lv.enabled_flag ,lv.start_date_active ,lv.end_date_active ,lv.created_by ,lv.creation_date ,lv.last_update_date ,lv.last_updated_by ,lv.last_update_login FROM gerp.fnd_lookup_values lv WHERE lv.language = userenv('LANG') AND lv.view_application_id = 700 AND lv.security_group_id = 0
时间: 2024-04-06 22:28:49 浏览: 96
这段代码是在Hive中查询gerp.fnd_lookup_values表中的数据,其中包括lookup_type、lookup_code、meaning、description、enabled_flag、start_date_active、end_date_active、created_by、creation_date、last_update_date、last_updated_by和last_update_login等字段。查询条件是language等于当前用户环境变量LANG的值,同时view_application_id等于700,security_group_id等于0。这段代码的作用是根据条件查询gerp.fnd_lookup_values表中的数据并返回相应的结果。
相关问题
SELECT * FROM gerp.fnd_lookup_values lv WHERE lv.language = userenv('LANG') AND lv.view_application_id = 700 AND lv.security_group_id = 0在hive中怎么写
在Hive中,你可以使用以下SQL语句来实现相同的查询:
```
SELECT *
FROM gerp.fnd_lookup_values lv
WHERE lv.language = SESSION_USER()
AND lv.view_application_id = 700
AND lv.security_group_id = 0;
```
其中,SESSION_USER()函数用于获取当前会话的用户名,相当于Oracle数据库中的USERENV('USER')函数。由于Hive中没有userenv函数,因此需要使用SESSION_USER()函数来代替。
另外,Hive中的SQL语句不区分大小写,因此可以将FROM、WHERE、AND等关键字写成大写或小写,以便于阅读。
SELECT * FROM fnd_lookup_values lv WHERE lv.language = userenv('LANG') AND lv.view_application_id = 700 AND lv.security_group_id = 0转换为hive的写法
下面是将该SQL转换为Hive的写法:
```
SELECT *
FROM fnd_lookup_values lv
WHERE lv.language = '${env:LANG}'
AND lv.view_application_id = 700
AND lv.security_group_id = 0;
```
在Hive中,可以使用`${env:变量名}`的方式获取环境变量的值,因此可以使用`${env:LANG}`获取当前用户的语言设置。另外,Hive中不需要指定所有列名,可以使用`*`来代替。
阅读全文