hive的随笔记录

1,当hive的sql语句select有数据,但count显示为0

答:这个主要是元数据里没有统计,所以取不出来统计后的条数,解决方法有两种:

      ①set hive.compute.query.using.stats=false;     这个配置一般在hive-site.xml有配置,不从元数据里取值,重新计算,效率低

      ②analyze table  表名 compute statistics;     这个是元数据重新生成统计信息,从元数据里取出来,效率高

         如果是分区表:ANALYZE TABLE $table_name partition(p=$1) COMPUTE STATISTICS;

2,substr的用法

      substr(string_A,int a,len b)其实跟substring(string_A,int a,len b)用法一样

      string_A:要截取的字段名

      a:开始的位置

      b:截取的长度

      例如: set_name='01Z561'

              substr(set_name,2,1)=='Z',从第二位开始,长度为1

 

你可能感兴趣的:(hive,大数据)