SQL总结:
1、SQL 对大小写不敏感
2、逻辑运算的优先级:() > not > and > or
3、or语句和and结合使用:
例:WHERE alexa > 15
AND (country=‘CN’ OR country=‘USA’);
4、指定别名
例:SELECT column_name AS alias_name
FROM table_name;
5、COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入):
例:SELECT COUNT(column_name) FROM table_name;
– 查询所有记录的条数
select count(*) from access_log;
– 查询websites 表中 alexa列中不为空的记录的条数
select count(alexa) from websites;
– 查询websites表中 country列中不重复的记录条数
select count(distinct country) from websites;
6、GROUP BY 语句用于结合聚合函数,根据一个或多个列对结果集进行分组
7、条件函数case when
CASE WHEN <判断表达式> THEN <表达式>
WHEN <判断表达式> THEN <表达式>
WHEN <判断表达式> THEN <表达式>
…
ELSE <表达式>
END
额外知识:
- Hive 依赖于 HDFS 存储数据,Hive 将 HQL 转换成 MapReduce 执行,所以说 Hive 是基于 Hadoop 的一个数据仓库工具,实质就是一款基于 HDFS(分布式文件系统Hadoop Distributed File System) 的 MapReduce 计算框架,对存储在 HDFS 中的数据进行分析和管理。
- HIVE中的方法:get_json_object(string json_string, string path)
说明: 第一个参数填写json对象变量,第二个参数使用$表示json变量标识,然后用 . 或 [] 读取对象或数组;如果输入的json字符串无效,那么返回NULL。 每次只能返回一个数据项。 - 例子:get_json_object(params, ‘$.someParams’) == ‘value’