Hive 函数

【Hive】Hive3中trunc函数功能 Hive3中trunc函数功能 场景: 因工作上使用的是hive2版本,并且在业务中需要用到trunc函数获取时间的季度的第一个月份, 但查询hive2版本并没有像oracle那样的获取季度的时间。 因hive已更新到hive3版本,想了解是否在新的版本里的trunc函数是否添加了各更多的功能, 于是在伪分布式hadoop里安装了hive3.1.1版本,然后查看trunc相关使用方法 hi... 阅读详情

Hive 函数

一、内置函数

1.1 内置函数帮助

# 查看系统自带的函数
show functions;

# 显示自带的函数的用法
desc function upper;

# 详细显示自带的函数的用法
desc function extended upper;

1.2 常用内置函数

1.2.1 空字段赋值

  1. 函数说明

NVL:给值为 NULL 的数据赋值,它的格式是 NVL( value,default_value)。它的功能是如果 value 为 NULL,则 NVL 函数返回 default_value 的值,否则返回 value 的值,如果两个参数都为 NULL ,则返回 NULL。

  1. 例子
# 如果员工的 comm 为 NULL,则用-1 代替
select comm,nvl(comm, -1) from emp;

# 如果员工的 comm 为 NULL,则用领导 id 代替
select comm, nvl(comm,mgr) from emp;

1.2.2 CASE WHEN THEN ELSE END

  1. 函数说明

CASE WHEN THEN ELSE END:相当于if else,它的语法格式是case when sal>2000 then sal*1.5 else sal*1.2 end 或者case id when '1' then 1 else 0 end。它的功能是当when的条件满足时,返回then的值,否则返回else的值。

  1. 例子

原始数据:

悟空 A 男
大海 A 男
宋宋 B 男
凤姐 A 女
婷姐 B 女
婷婷 B 女

创建表,并导入数据:

create table emp_sex(
name string, 
dept_id string, 
sex string) 
row format delimited fields terminated by " ";

load data local inpath '/root/mydata/emp_sex.txt' into table emp_sex;

按照需求查询数据:

select
	dept_id,
	sum(case sex when '男' then 1 else 0 end) male_count,
	sum(case sex when '女' then 1 else 0 end) female_count
from emp_sex
group by dept_id;

1.2.3 行转列

  1. 相关函数说明

CONCAT(string A/col, string B/col…):返回输入字符串连接后的结果,支持任意个输入字符串;

CONCAT_WS(separator, str1, str2,...):它是一个特殊形式的 CONCAT()。第一个参数剩余参数间的分隔符。分隔符可以是与剩余参数一样的字符串。如果分隔符是 NULL,返回值也将为 NULL。这个函数会跳过分隔符参数后的任何 NULL 和空字符串。分隔符将被加到被连接的字符串之间;

注意: CONCAT_WS must be “string or array”

COLLECT_SET(col):函数只接受基本数据类型,它的主要作用是将某字段的值进行去重汇总,产生 Array 类型字段。

  1. 例子

原始数据:

孙悟空 白羊座 A
大海 射手座 A
宋宋 白羊座 B
猪八戒 白羊座 A
凤姐 射手座 A
苍老师 白羊座 B

创建表,并导入数据:

create table person_info(
name string, 
constellation string, 
blood_type string) 
row format delimited fields terminated by "\t";

load data local inpath "/opt/module/hive/data/person_info.txt" into table person_info;

按照需求查询数据:

select
    t1.c_b,
    concat_ws("|",collect_set(t1.name))
from (
    select
		    name,
		    concat_ws(',',constellation,blood_type) c_b
    from person_info
) t1
group by t1.c_b

1.2.4 列转行

  1. 相关函数说明

EXPLODE(col):将 hive 一列中复杂的 Array 或者 Map 结构拆分成多行。

LATERAL VIEW

用法:LATERAL VIEW udtf(expression) tableAlias AS columnAlias

解释:用于和 split, explode 等 UDTF 一起使用,它能够将一列数据拆成多行数据,在此基础上可以对拆分后的数据进行聚合。

  1. 例子

原始数据:

《疑犯追踪》  悬疑,动作,科幻,剧情
《Lie to me》  悬疑,警匪,动作,心理,剧情
《战狼 2》  战争,动作,灾难

创建表、并导入数据:

create table movie_info(
	movie string,
	category string)
row format delimited fields terminated by "\t";

load data local inpath "/opt/module/data/movie.txt" into table movie_info;

按需求查询数据:

select
    movie,
    category_name
from
    movie_info
lateral view
    explode(split(category,",")) movie_info_tmp as category_name;

1.2.5 窗口函数(开窗函数)

  1. 相关函数说明

OVER():指定分析函数工作的数据窗口大小,这个数据窗口大小可能会随着行的变而变化。

CURRENT ROW:当前行

n PRECEDING:往前 n 行数据

n FOLLOWING:往后 n 行数据

UNBOUNDED:起点,

UNBOUNDED PRECEDING :表示从前面的起点

UNBOUNDED FOLLOWING :表示到后面的终点

LAG(col,n,default_val):往前第 n 行数据

LEAD(col,n, default_val):往后第 n 行数据

NTILE(n):把有序窗口的行分发到指定数据的组中,各个组有编号,编号从 1 开始,对于每一行,NTILE 返回此行所属的组的编号。注意:n 必须为 int 类型。

  1. 例子

原始数据:name,orderdate,cost

jack,2017-01-01,10
tony,2017-01-02,15
jack,2017-02-03,23
tony,2017-01-04,29
jack,2017-01-05,46
jack,2017-04-06,42
tony,2017-01-07,50
jack,2017-01-08,55
mart,2017-04-08,62
mart,2017-04-09,68
neil,2017-05-10,12
mart,2017-04-11,75
neil,2017-06-12,80
mart,2017-04-13,94

创建表,并导入数据

create table business(
name string,
orderdate string,
cost int) 
ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';

load data local inpath "/opt/module/data/business.txt" into table business;

需求:

  1. 查询在 2017 年 4 月份购买过的顾客及总人数
  2. 查询顾客的购买明细及月购买总额
  3. 上述的场景, 将每个顾客的 cost 按照日期进行累加
  4. 查询每个顾客上次的购买时间
  5. 查询前 20%时间的订单信息

按需求查询数据

# 查询在 2017 年 4 月份购买过的顾客及总人数
select name,count(*) over () 
from business
where substring(orderdate,1,7) = '2017-04'
group by name;

# 查询顾客的购买明细及月购买总额
select name, orderdate, cost, sum(cost) over(partition by month(orderdate)) 
from business;

# 将每个顾客的 cost 按照日期进行累加
select name,orderdate,cost,
sum(cost) over() as sample1,--所有行相加
sum(cost) over(partition by name) as sample2,--按 name 分组,组内数据相加
sum(cost) over(partition by name order by orderdate) as sample3,--按 name分组,组内数据累加
sum(cost) over(partition by name order by orderdate rows between 
UNBOUNDED PRECEDING and current row ) as sample4 ,--和 sample3 一样,由起点到当前行的聚合
sum(cost) over(partition by name order by orderdate rows between 1 
PRECEDING and current row) as sample5, --当前行和前面一行做聚合
sum(cost) over(partition by name order by orderdate rows between 1 
PRECEDING AND 1 FOLLOWING ) as sample6,--当前行和前边一行及后面一行
sum(cost) over(partition by name order by orderdate rows between current 
row and UNBOUNDED FOLLOWING ) as sample7 --当前行及后面所有行
from business;

# 查看顾客上次的购买时间
select name,orderdate,cost,
lag(orderdate,1,'1900-01-01') over(partition by name order by orderdate ) as time1, 
lag(orderdate,2) over (partition by name order by orderdate) as time2 
from business;

# 查询前 20%时间的订单信息
select * from (
 select name,orderdate,cost, ntile(5) over(order by orderdate) sorted
 from business
) t
where sorted = 1;

rows 必须跟在 order by 子句之后,对排序的结果进行限制,使用固定的行数来限制分区中的数据行数量。

1.2.6 Rank

  1. 相关函数说明

RANK() :排序相同时会重复,总数不会变

DENSE_RANK() :排序相同时会重复,总数会减少

ROW_NUMBER() :会根据顺序计算

  1. 例子

原始数据

孙悟空 语文 87
孙悟空 数学 95
孙悟空 英语 68
大海 语文 94
大海 数学 56
大海 英语 84
宋宋 语文 64
宋宋 数学 86
宋宋 英语 84
婷婷 语文 65
婷婷 数学 85
婷婷 英语 78

创建表,并导入数据

create table score(
name string,
subject string, 
score int) 
row format delimited fields terminated by "\t";

load data local inpath '/opt/module/data/score.txt' into table score;

按需求查询数据

select name,
subject,
score,
rank() over(partition by subject order by score desc) rp,
dense_rank() over(partition by subject order by score desc) drp,
row_number() over(partition by subject order by score desc) rmp
from score;

1.2.7 其他常用函数

常用函数.txt

1.2.8 窗口函数详解

  1. 什么是窗口函数?

窗口函数是 SQL 中一类特别的函数。和聚合函数相似,窗口函数的输入也是多行记录。不同的是,聚合函数的作用于由 GROUP BY 子句聚合的组,而窗口函数则作用于一个窗口, 这里,窗口是由一个 OVER 子句 定义的多行记录。聚合函数对其所作用的每一组记录输 出一条结果,而窗口函数对其所作用的窗口中的每一行记录输出一条结果。一些聚合函数,如 sum, max, min, avg,count 等也可以当作窗口函数使用。

  1. 窗口函数原理

在用group-by处理数据分组时,每一行只能进入一个分组。窗口函数基于称为框(frame)的一组行,计算表的每一输入行的返回值,每一行可以属于一个或多个框。常见用例就是查看某些值的滚动平均值,其中每一行代表一天,那么每行属于7个不同的框。

如下图所示,每一行是如何匹配多个窗口框的。

在这里插入图片描述

  1. 基本语法

在这里插入图片描述

窗口函数分为四个部分:

  • 函数子句:指明具体操作,如sum-求和,first_value-取frame的第一个值
  • partition by子句:指明分区字段,如果没有,则将所有数据作为一个分区。
  • order by子句:指明了每个分区排序的字段和方式,也是可选的,没有就按照表中的顺序。
  • 窗口子句:指明相对当前记录的计算范围,也就是指定frame框。可以向上(preceding),也可以向下(following),也可以使用between指明,上下边界的值,没有的话默认为当前分区。rows between,也叫做window子句,后面可以跟:
    • 数字+preceding向前n条
    • 数字+following向后n条
    • current row当前行
    • unbounded无边界,表示从前面最开始到最终
    • unbounded preceding表示最前面一条
    • unbounded following表示最后一条
  1. 窗口函数有那些?

窗口函数的功能分为:聚合、取值、排名、序列四种,前三种的使用场景比较常见,容易理解,最后一种(序列)的使用场景比较少。

  • 聚合

    • count 统计条数
    • sum 求和
    • avg 求平均值
    • max 求最大值
    • min 求最小值
  • 取值

    • first_value:取窗口中的第一个值

    • last_value:取窗口中的最后一个值

    • lag(col, n, default) :用于统计窗口内向上n行的值。

      col:列名;n:向上n行[可选,默认为1];default:当向上n行为null时,取默认值,若不指定,则为null。

    • lead(col, n, default):用于统计窗口内向下n行的值。

      col:列名;n:向下n行[可选,默认为1];default:当向下n行为null时,取默认值,若不指定,则为null。

  • 排序

    • rank:排序,有相同分数,排名相同并后续跳过,如分数5,5,8,9,则结果为1,1,3,4
    • dense_rank:排序,有相同分数排名相同,但后续街上,如分数5,5,8,9,则结果为1,1,2,3
    • row_number:排序,相同分数按先来后到排序,无重复排序,如分数5,5,8,9,则结果为1,2,3,4
  • 其他

    • cume_dist:小于等于当前值的行数/分组内总行数,比如:统计小于等于当前薪水的人数,所占总人数的比例。
    • percent_rank:计算给定行的百分比排名。(分组内当前行的rank值-1)/(分组内总行数-1),可以用来计算超过了百分之多少的人。
    • ntile(n):将分区中的数据按照顺序划分为n片,返回当前片的值。注意:如果切片不均匀,默认增加第一个切片的分布。不支持rows between。

二、自定义函数

Hive 自带了一些函数,比如:max/min 等,但是数量有限,自己可以通过自定义 UDF 来方便的扩展。当 Hive 提供的内置函数无法满足你的业务处理需要时,此时就可以考虑使用用户自定义函数(UDF:user-defined function)。

根据用户自定义函数类别分为以下三种:

  • UDF(User-Defined-Function):一进一出
  • UDAF(User-Defined Aggregation Function):聚类函数,多进一出
  • UDTF(User-Defined Table-Generating Functions):一进多出,如lateral view explode()

官方文档地址:https://cwiki.apache.org/confluence/display/Hive/HivePlugins

编程步骤:

  1. 继承 Hive 提供的类
org.apache.hadoop.hive.ql.udf.generic.GenericUDF;
org.apache.hadoop.hive.ql.udf.generic.GenericUDTF;
  1. 实现类中的抽象方法

  2. 在 hive 的命令行窗口创建函数

    • 添加 jar:

      add jar linux_jar_path

    • 创建 function:

      create [temporary] function [dbname.]function_name AS class_name;

  3. 在 hive 的命令行窗口删除函数

drop [temporary] function [if exists] [dbname.]function_name;

2.1 自定义UDF

  1. 创建一个maven工程
  2. 导入hive依赖
<dependencies>
	<dependency>
		<groupId>org.apache.hive</groupId>
		<artifactId>hive-exec</artifactId>
		<version>3.1.2</version>
	</dependency>
</dependencies>
  1. 创建一个类,并继承GenericUDF
import org.apache.hadoop.hive.ql.exec.UDFArgumentException;
import org.apache.hadoop.hive.ql.metadata.HiveException;
import org.apache.hadoop.hive.ql.udf.generic.GenericUDF;
import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
import org.apache.hadoop.hive.serde2.objectinspector.primitive.PrimitiveObjectInspectorFactory;

/**
 * @author Kewei
 * @Date 2021/8/29 9:45
 */

public class MyUDF extends GenericUDF {
		// 初始化,一般做一些判断
    @Override
    public ObjectInspector initialize(ObjectInspector[] objectInspectors) throws UDFArgumentException {
        if (objectInspectors.length != 1) {
            throw new UDFArgumentException("参数个数不为1");
        }
        return PrimitiveObjectInspectorFactory.javaIntObjectInspector;
    }
		
		// 计算逻辑
    @Override
    public Object evaluate(DeferredObject[] deferredObjects) throws HiveException {

        String input = deferredObjects[0].get().toString();
        if (input == null) {
            return 0;
        }

        return input.length();
    }
		
		// 执行hive函数转换为MapReduce的说明,一般设置为空
    @Override
    public String getDisplayString(String[] strings) {
        return "";
    }
}
  1. 打成 jar 包上传到服务器

  2. 将 jar 包添加到 hive 的 classpath

    add jar /root/hivejar/myudf.jar;
    
  3. 创建临时函数与开发好的 java class 关联

    create temporary function my_len as "MyUDF";
    
  4. 然后就可以使用它

    select my_len('hello');
    

2.2 自定义UDTF

  1. 创建一个类,并继承GenericUDTF
import org.apache.hadoop.hive.ql.exec.UDFArgumentException;
import org.apache.hadoop.hive.ql.metadata.HiveException;
import org.apache.hadoop.hive.ql.udf.generic.GenericUDTF;
import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorFactory;
import org.apache.hadoop.hive.serde2.objectinspector.StructObjectInspector;
import org.apache.hadoop.hive.serde2.objectinspector.primitive.PrimitiveObjectInspectorFactory;

import java.util.ArrayList;

/**
 * @author Kewei
 * @Date 2021/8/29 9:59
 */

public class MyUDTF extends GenericUDTF {

    private ArrayList<String> outList = new ArrayList<String>();
		
		// 初始化,需要返回一个StructObjectInspector 
    @Override
    public StructObjectInspector initialize(StructObjectInspector argOIs) 
            throws UDFArgumentException {
        ArrayList<String> fieldName = new ArrayList<>();
        ArrayList<ObjectInspector> fieldOis = new ArrayList<>();

        // 输出数据的列名
        fieldName.add("lineToWord");

        // 输出数据的类型
        fieldOis.add(PrimitiveObjectInspectorFactory.javaStringObjectInspector);

        return ObjectInspectorFactory.getStandardStructObjectInspector(fieldName,fieldOis);
    }

		// 计算逻辑,需要使用forward,传出数据。
    @Override
    public void process(Object[] args) throws HiveException {
        String arg = args[0].toString();

        String splitKey = args[1].toString();

        String[] fields = arg.split(splitKey);

        for (String field : fields) {
            outList.clear();
            outList.add(field);
            forward(outList);
        }

    }

		// 一般为空
    @Override
    public void close() throws HiveException {

    }
}
  1. 打成 jar 包上传到服务器

  2. 将 jar 包添加到 hive 的 classpath

    add jar /root/hivejar/myudtf.jar;
    
  3. 创建临时函数与开发好的 java class 关联

    create temporary function myudtf as "MyUDTF";
    
  4. 然后就可以使用它

    select myudtf('hello:spark:hadoop:hive',':');
    
ODPS #MaxCompute数据开发中几个常见的异常及解决方案 ODPS #MaxCompute数据开发中几个常见的异常及解决方案:分区表不允许全表扫描,必须指定分区值;多屏幕打印查询结果;语句未以分号结尾;无表查询权限;ORDER BY 未配合 LIMIT 使用;日期格式使用错误 阅读详情

相关推荐

Hive的内置函数

HIVE除了提供了类似mysql的sql的语法外,还提供了大量内置的函数,方便开发者来调用,编写功能丰富的处理程序。使用如下命令查看当前hive版本支持的所有内置函数。

小枫的博客 1717

阿里云MaxCompute(ODPS)常见使用问题(持续更新中)

记录MaxCompute(ODPS)常见使用问题

reading-conference-writing 2万+

6Hive Sql 大全-Hive 函数

此外还有很多数学函数: 绝对值函数: abs()、正取余函数: pmod()、正弦函数: sin()、反正弦函数: asin()、余弦函数: cos()、反余弦函数: acos()、positive函数: positive()、negative函数: negative()比如,M是值为{‘f’ -> ‘foo’, ‘b’ -> ‘bar’, ‘all’ -> ‘foobar’}的map类型,那么M[‘all’]将会返回’foobar’说明:将字符串A中的符合java正则表达式B的部分替换为C。

qq_45972323的博客 1468

遇到:SyntaxError: invalid token 错误应该如何解决

遇到 "SyntaxError: invalid token" 错误通常表示你的代码中存在语法错误,导致无法正确解析和执行代码。

牛肉胡辣汤 1万+

[Hive进阶]-- Hive 优化

由于Hive的执行依赖于底层的MapReduce作业,因此对Hadoop作业的优化或者对MapReduce作业的调整是提高Hive性能的基础。所以我们可以通过一系列的调优方法,来提高大幅度地Hive查询的性能。 1、启用压缩 压缩可以使磁盘上存储的数据量变小,通过降低I/O来提高查询速度。 查出所使用的Hive版本支持的压缩编码方式,下面的set命令列出可用的编解码器(CDH 5.8.x中的...

欢迎来到我的博客,一起探索代码里的世界! 4327

STM32平台中ARM架构向量表配置:手把手教程

深入讲解STM32平台下arm架构的向量表配置方法,结合实际操作步骤,帮助开发者掌握中断向量的定位与初始化,提升嵌入式系统开发效率。

weixin_42514540的博客 800

阿里云DataWorks--odps常见报错及解决方案

阿里云常见报错及解决方案

feiyuxc的博客 7805

【软件逆向】带壳带反调试找flag教程(VMProtect3.0+X64dbg+ScyllaHide)

【软件逆向】带壳带反调试找flag教程(VMProtect 3.0+X64dbg+ScyllaHide)

zhangjiuding的博客 7506

【图文详细 】Hive 函数、Hive 函数、Hive 函数

1.hive内置函数 1.1、内容较多,见《Hive 官方文档》  https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF   1.2、测试内置函数的快捷方式:   第一种方式:直接使用,例如:select concat('a','a')  

谦卑t 9651

SAP数据导入工具(LSMW) 超级详细教程(批量导入内部订单)

用户提了个需求,让我批量导入内部订单几百个内部订单。我本打算用写段ABAP 代码来调用 BAPI (BAPI_INTERNALORDER_CREATE)就可以了。但想到我很久没有用过LSMW 了,都快要忘记了。于是我采用LSMW的方式,完成了任务。并把过程记录下来,形成教程方便我以后回头查看,分享出来也希望对大家有帮助。

IT小职员 2万+

库卡kuka仿真软件sim Pro 3.1简单实用教程

实验目的 建立机器人,自定义抓手,导入外部模型,掌握工具坐标、基坐标的使用,自动生成轨迹。 实验步骤 打开KUKA.Sim Pro 3.1.2仿真软件,依次点击KUKA Sim Library 3.1 → KUKA_ROBOTS→Small Robots(3kg-10kg)→Archiv→AGILUS-1 Series→sixx,双击KR 6 R700 sixx,加载机器臂到工作空间; 加载自定义抓手。双击Miscellaneous,再双击圆锥Cone设置上半径为0,下半径为40,高为100; 点击“捕

weixin_45168199的博客 4万+

十二、Hive 函数

在 Hive 的世界里,数据处理不只是查询和统计,更是一场灵活的“变形术”。无论是字符串提取、日期计算,还是数组展开、数据脱敏,Hive 丰富的内置函数和运算符就像工具箱中的万能钥匙,让你能精准、高效地操控数据。本篇文章带你系统梳理 Hive 常用函数的分类与用法,并配合实际案例、代码演示和练习题,帮助你从“看得懂”到“用得顺”,逐步掌握函数背后的逻辑与技巧。

专注于 Agent 工程、AI 产品、Harness Engineering、LLM 算法等方向,OpenMathModel、Nivik 等开源项目作者 7万+

华为OD机试真题 新系统2026-04-01 Python&JS 实现【空间占用计算】

员工A的磁盘空间经常被耗尽,他需要找到占用空间最大的目录或文件,然后决定如何清理文件释放空间。给定某一目录,请编写程序帮助他统计该目录内一级子目录和文件的占用空间,并返回目标目录一级子项(文件或子目录)中占用空间最大的项。

MISAYAONE的博客 1298

Hive常用的函数总结

常见hive函数,必须掌握!

大数据梦想家 1万+

1-Spring Security OAuth2专栏介绍

我自己 我是码农小胖哥,一名后端软件工程师,有多年的后端开发经验,同时也是一名热衷于技术分享、拥抱开源的技术博主。我的技术栈主要是Java、Python、Kotlin,欢迎各位同行进行交流和分享。 个人技术公众号:码农小胖哥 个人博客:https://felord.cn Gitee: https://gitee.com/felord 你可以通过以上方式和我交流、解决学习中的疑难杂症。 2021年开源Spring Security 干货系列教程,2022年又开源Spring Security进阶版,帮

码农小胖哥 7935

uniapp - 解决uni.getLocation定位不准有偏差,定位经纬度不准确有几百米误差、获取地图定位有偏差怎么办,已配置高精确度但依旧不精准(uni.getLocation定位不准如何解决)

uni.getLocation,获取当前的地理位置、速度。已经设置altitude高精度,uniapp API获取定位有差异问题解决,获取定位有几百米偏差,uni.getLocation(OBJECT)中使用默认type ”wgs84“会导致定位不准的问题,gcj02,uni.getLocation地图定位不准,获取经纬度错误偏移了几十公里,经纬度的精确度误差,怎么消除经纬度偏差,解决 uniapp uni.getLocation 定位经纬度不准问题,使用定位不准,定位不准误差问题,解决定位不准问题,高德地

✅ 精选推荐文章 1万+

Hive函数大全

目录 第四章 Hive函数 4.1 聚合函数 4.2 关系函数 4.3 数学运算 4.4 逻辑运算 4.5 数值运算 4.6 条件函数 4.7 日期函数 4.8 字符串函数 4.9 字符串截取函数 4.10 去空格函数 4.11 正则表达式与解析函数 4.12 explode函数 4.13 行转列与列转行 4.14 基础窗口函数与分析函数 4.14.1 窗口函数简介 4.14.2 窗口的含义 4.14.3 窗口函数分类 4.14.4 窗口函数的使用 4.14.5.

数据挖掘+大数据研发+算法学习 9485

揭秘AI人工智能中Stable Diffusion的模型微调技巧

Stable Diffusion作为一种强大的文本到图像生成模型,在艺术创作、设计、娱乐等多个领域展现出了巨大的应用潜力。然而,其默认的模型输出可能无法满足特定用户或特定场景的个性化需求。本文章的目的在于深入揭秘Stable Diffusion的模型微调技巧,让读者能够根据自己的需求对模型进行定制化调整,生成符合特定风格、主题或要求的图像。范围涵盖了从基础概念到实际操作,从理论原理到项目实战的全方位内容,旨在为读者提供一个系统且深入的学习指南。

大模型应用工坊 948

Hive的函数

Hive的函数介绍

残缺的孤独 3万+

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Hive函数

目录 1、 系统内置函数 2、 常用内置函数 2.1 空字段赋值 2.2 CASE WHEN 2.3 行转列 2.4 列转行 2.5日期相关函数 3、 自定义函数 4、 自定义UDF函数 1、 系统内置函数 1)查看系统自带的函数 hive> show functions; 2)显示自带的函数的用法 hive> desc function upper; 3)详细显示自带的函数的用法 hive> desc function extended up..

Markble 4529

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

【Hive】一些函数

语法: split(string str, string pat) 返回值: array 说明: 按照pat字符串分割str,会返回分割后的字符串数组 举例: 1.基本用法 hive> select split('abcdef', 'c') from test; ["ab", "def"] 2.截取字符串中的某个值 //获取年月日 hive (default)> select...

依旧的博客 5080

Hive函数详解

Hive函数

喻师傅的学习笔记 1945
上一篇: Hive 分区表和分桶表
下一篇: Hive 压缩和储存
努力生活的黄先生
博客等级 码龄7年 38粉丝 57原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力生活的黄先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值