HiveQL 运算符
HiveQL运算符有助于执行各种算术和关系运算。在这里,我们将在下表的记录上执行此类操作:
Hive中的运算符示例
我们创建一个表,并使用以下步骤将数据加载到其中:-
选择要在其中创建表的数据库。
使用以下命令创建配置单元表:-
hive> create table employee (Id int, Name string , Salary float)
row format delimited
fields terminated by ',' ;
现在,将数据加载到表中。
hive> load data local inpath '/home/codegyani/hive/emp_data' into table employee;
让我们使用以下命令来获取已加载的数据:-
hive> select * from employee;
现在,我们将通过相应的示例讨论算术和关系运算符。
Hive中的算术运算符
在Hive中,算术运算符接受任何数字类型。常用的算术运算符为:-
操作员 |
说明 |
A + B |
这用于添加A和B。 |
A-B |
这用于从A中减去B。 |
A * B |
这用于将A和B相乘。 |
A/B |
这用于对A和B进行除法并返回操作数的商。 |
A%B |
这将返回A/B的其余部分。 |
A | B |
这用于确定A和B的按位或。 |
A和B |
这用于确定A和B的按位与。 |
A ^ B |
这用于确定A和B的按位异或。 |
〜A |
这用于确定A的按位NOT。 |
Hive中算术运算符的示例
让我们看一个示例,将每个员工的薪水提高50。
hive> select id, name, salary + 50 from employee;
让我们看一个示例,将每个员工的薪水降低50。
hive> select id, name, salary-50 from employee;
让我们看一个示例,找出每个雇员的10%工资。
hive> select id, name, (salary * 10) /100 from employee;
Hive中的关系运算符
在蜂巢,关系运算符通常与诸如连接和必须比较现有记录的子句一起使用。常用的关系运算符是:-
操作员 |
说明 |
A = B |
如果A等于B,则返回true,否则返回false。 |
A <> B,A!= B |
如果A或B为null,则返回null;否则返回null。如果A不等于B,则为true,否则为false。 |
A |
如果A或B为null,则返回null;否则返回null。如果A小于B,则为true,否则为false。 |
A> B |
如果A或B为null,则返回null;否则返回null。如果A大于B,则为true,否则为false。 |
A <= B |
如果A或B为null,则返回null;否则返回null。如果A小于或等于B,则为true,否则为false。 |
A> = B |
如果A或B为null,则返回null;否则返回null。如果A大于或等于B,则为true,否则为false。 |
一个为空 |
如果A评估为null,则返回true,否则返回false。 |
A不为空 |
如果A评估为null,则返回false,否则返回true。 |
Hive中关系运算符的示例
让我们看一个示例来获取薪水> = 25000的员工的详细信息。
hive> select * from employee where salary >= 25000;
让我们看一个示例来获取工资为<25000的员工的详细信息。
hive> select * from employee where salary < 25000;
