hive - 在 Hive 中选择 database.table.column
问题描述
是否可以使用
SELECT DB.TABLE.COLUMN from DB.TABLE
在蜂巢?
我知道可以别名DB.TABLE
如下
SELECT T1.COLUMN FROM DB.TABLE AS T1
但是,在 Hive 中是否有任何方法可以选择由其数据库和表名完全限定的列,如上面的第一个查询所示?我以前在 MySQL 中做过这个,但我不知道是否有办法让 Hive 以这种方式工作。
解决方案
不,这在 Hive 中是不可能的,你会得到一个例外:
SemanticException [Error 10004]: Line 1:7 Invalid table alias or column reference 'DB': (possible column names are: col)
你的第二个选择句是有效的。要指定数据库,请使用数据库名称限定表名(从 Hive 0.7 开始的“db_name.table_name”)或在查询语句之前发出 USE 语句(从 Hive 0.6 开始)。
在此处查看语言手册:LanguageManual+Select
推荐阅读
- sockets - ZeroMQ ROUTER 套接字可以向特定的 DEALER 套接字发出自发的异步请求吗?
- python - 根据条件在 Pandas DataFrame 中选择行的两种最佳方法
- python - docker容器上的“rm -rf”可以删除主机上的文件吗?
- css - 将图像“推”到视口边缘之外
- c - 摆脱堆栈程序中的所有错误
- git - 具有多个提交的 Git 补丁,最后一个未应用
- android - viewpager 隐藏在某些华为和荣耀手机上
- algorithm - 如何求时间复杂度和大O?
- python - 如何在 Powershell 中使用 Tree 压缩文件
- flutter - 颤动取消选择 RadioListTile 按钮