当前位置: 首页 > news >正文

DataWorks函数

文章目录

    • 0、MaxCompute预置的函数分类
    • 1、日期函数
    • 2、数学函数
    • 3、算术运算符
    • 4、窗口函数
    • 5、聚合函数
    • 6、字符串函数
    • 7、复杂类型函数
    • 8、加密函数
    • 9、其他函数


0、MaxCompute预置的函数分类

函数类型说明
日期函数支持处理DATE、DATETIME、TIMESTAMP等日期类型数据,实现加减日期、计算日期差值、提取日期字段、获取当前时间、转换日期格式等业务处理能力。
数学函数支持处理BIGINT、DOUBLE、DECIMAL、FLOAT等数值类型数据,实现转换进制、数学运算、四舍五入、获取随机数等业务处理能力。
窗口函数支持在指定的开窗列中,实现求和、求最大最小值、求平均值、求中间值、数值排序、数值偏移、抽样等业务处理能力。
聚合函数支持将多条输入记录聚合成一条输出值,实现求和、求平均值、求最大最小值、求平均值、参数聚合、字符串连接等业务处理能力。
字符串函数支持处理STRING类型字符串,实现截取字符串、替换字符串、查找字符串、转换大小写、转换字符串格式等业务处理能力。
复杂类型函数支持处理MAP、ARRAY、STRUCT及JSON类型数据,实现去重元素、聚合元素、元素排序、合并元素等业务处理能力。
加密函数支持处理STRING、BINARY类型的表数据,实现加密、解密等业务处理能力。
其他函数除上述函数之外,提供支持其他业务场景的函数。

1、日期函数

MaxCompute SQL提供了如下日期函数,您可以根据实际需要选择合适的日期函数,完成日期计算、日期转换。

函数小写功能
DATEADDdateadd按照指定的单位和幅度修改日期值。
DATE_ADDdate_add按照指定的幅度增减天数,与date_sub的增减逻辑相反。
DATE_FORMATdate_format将日期值转换为指定格式的字符串。
DATE_SUBdate_sub按照指定的幅度增减天数,与date_add的增减逻辑相反。
DATEDIFFdatediff计算两个日期的差值并按照指定的单位表示。
DATEPARTdatepart提取日期中符合指定时间单位的字段值。
DATETRUNCdatetrunc提取日期按照指定时间单位截取后的值。
FROM_UNIXTIMEfrom_unixtime将数字型的UNIX值转换为日期值。
GETDATEgetdate获取当前系统时间。
ISDATEisdate判断一个日期字符串能否根据指定的格式串转换为一个日期值。
LASTDAYlastday获取日期所在月的最后一天。
TO_DATEto_date将指定格式的字符串转换为日期值。
TO_CHARto_char将日期按照指定格式转换为字符串。
UNIX_TIMESTAMPunix_timestamp将日期转换为整型的UNIX格式的日期值。
WEEKDAYweekday返回日期值是当前周的第几天。
WEEKOFYEARweekofyear返回日期值位于当年的第几周。
ADD_MONTHSadd_months计算日期值增加指定月数后的日期。
CURRENT_TIMESTAMPcurrent_timestamp返回当前TIMESTAMP类型的时间戳。
CURRENT_TIMEZONEcurrent_timezone返回当前系统的时区信息。
DAYday返回日期值的天。
DAYOFMONTHdayofmonth返回日部分的值。
DAYOFWEEKdayofweek返回日期的星期值。
DAYOFYEARdayofyear返回日期是当年中的第几天。
EXTRACTextract获取日期TIMESTAMP中指定单位的部分。
FROM_UTC_TIMESTAMPfrom_utc_timestamp将一个UTC时区的时间戳转换为一个指定时区的时间戳。
HOURhour返回日期小时部分的值。
LAST_DAYlast_day返回日期值所在月份的最后一天日期。
MINUTEminute返回日期分钟部分的值。
MONTHmonth返回日期值所属月份。
MONTHS_BETWEENmonths_between返回指定日期值间的月数。
NEXT_DAYnext_day返回大于日期值且与指定周相匹配的第一个日期。
QUARTERquarter返回日期值所属季度。
SECONDsecond返回日期秒数部分的值。
TO_MILLISto_millis将指定日期转换为以毫秒为单位的UNIX时间戳。
YEARyear返回日期值的年。

2、数学函数

MaxCompute SQL提供了如下数学函数供您在开发过程中使用,您可以根据实际需要选择合适的数学函数,进行数据计算、数据转换相关操作。

函数小写功能
ABSabs计算绝对值。
ACOSacos计算反余弦值。
ASINasin计算反正弦值。
ATANatan计算反正切值。
ATAN2atan2计算expr1/expr2的反正切函数。
CEILceil计算向上取整值。
CONVconv计算进制转换值。
COScos计算余弦值。
COSHcosh计算双曲余弦值。
COTcot计算余切值。
EXPexp计算指数值。
FLOORfloor计算向下取整值。
ISNANisnan判断表达式的值是否是NaN。
LNln计算自然对数。
LOGlog计算log对数值。
NEGATIVEnegative返回表达式的负值。
POSITIVEpositive返回表达式的值。
POWpow计算幂值。
RANDrand返回随机数。
ROUNDround返回四舍五入到指定小数点位置的值。
SINsin计算正弦值。
SINHsinh计算双曲正弦值。
SQRTsqrt计算平方根。
TANtan计算正切值。
TANHtanh计算双曲正切值。
TRUNCtrunc返回截取到指定小数点位置的值。
BINbin计算二进制代码值。
CBRTcbrt计算立方根值。
CORRcorr计算皮尔逊系数。
DEGREESdegrees将弧度转换为角度。
Ee返回e的值。
FACTORIALfactorial计算阶乘值。
FORMAT_NUMBERformat_number将数字转化为指定格式的字符串。
HEXhex返回整数或字符串的十六进制格式。
LOG2log2计算以2为底的对数。
LOG10log10计算以10为底的对数。
PIpi返回π的值。
RADIANSradians将角度转换为弧度。
SIGNsign返回输入参数的符号。
SHIFTLEFTshiftleft计算按位左移值。
SHIFTRIGHTshiftright计算按位右移值。
SHIFTRIGHTUNSIGNEDshiftrightunsigned计算无符号按位右移值。
UNHEXunhex返回十六进制字符串所代表的字符串。
WIDTH_BUCKETwidth_bucket返回指定字段值落入的分组编号。

3、算术运算符

运算符说明
A+BA或B为NULL,返回NULL,否则返回A+B的结果。
A-BA或B为NULL,返回NULL,否则返回A-B的结果。
A*BA或B为NULL,返回NULL,否则返回A×B的结果。
A/BA或B为NULL,返回NULL,否则返回A÷B的结果。说明如果A和B为BIGINT类型,返回结果为DOUBLE类型。
A%BA或B为NULL,返回NULL,否则返回A÷B并取余数的结果。
+A仍然返回A。
-A如果A为NULL,返回NULL,否则返回-A。
A DIV BA或B为NULL,返回NULL,否则返回A DIV B的结果。

4、窗口函数

MaxCompute SQL提供了如下窗口函数,使用窗口函数对指定开窗列的数据灵活地进行分析处理工作。

函数小写功能
ROW_NUMBERrow_number计算行号。从1开始递增。
RANKrank计算排名。排名可能不连续。
DENSE_RANKdense_rank计算排名。排名是连续的。
PERCENT_RANKpercent_rank计算排名。输出百分比格式。
CUME_DISTcume_dist计算累计分布。
NTILEntile将数据顺序切分成N等份,返回数据所在等份的编号(从1到N)。
LAGlag取当前行往前(朝分区头部方向)第N行数据的值。
LEADlead取当前行往后(朝分区尾部方向)第N行数据的值。
FIRST_VALUEfirst_value取当前行所对应窗口的第一条数据的值。
LAST_VALUElast_value取当前行所对应窗口的最后一条数据的值。
NTH_VALUEnth_value取当前行所对应窗口的第N条数据的值。
CLUSTER_SAMPLEcluster_sample用户随机抽样。返回True表示该行数据被抽中。
COUNTcount计算窗口中的记录数。
MINmin计算窗口中的最小值。
MAXmax计算窗口中的最大值。
AVGavg对窗口中的数据求平均值。
SUMsum对窗口中的数据求和。
MEDIANmedian计算窗口中的中位数。
STDDEVstddev计算总体标准差。是STDDEV_POP的别名。
STDDEV_SAMPstddev_samp计算样本标准差。

5、聚合函数

MaxCompute SQL支持的聚合函数如下。

函数小写功能
AVGavg计算平均值。
COUNTcount计算记录数。
COUNT_IFcount_if计算指定表达式为True的记录数。
MAXmax计算最大值。
MINmin计算最小值。
MEDIANmedian计算中位数。
STDDEVstddev计算总体标准差。
STDDEV_SAMPstddev_samp计算样本标准差。
SUMsum计算汇总值。
WM_CONCATwm_concat用指定的分隔符连接字符串。
ANY_VALUEany_value在指定范围内任选一个值返回。
APPROX_DISTINCTapprox_distinct返回输入的非重复值的近似数目。
ARG_MAXarg_max返回指定列的最大值对应行的列值。
ARG_MINarg_min返回指定列的最小值对应行的列值。
MAX_BYmax_by返回指定列的最大值对应行的列值。
MIN_BYmin_by返回指定列的最小值对应行的列值。
COLLECT_LISTcollect_list将指定的列聚合为一个数组。
COLLECT_SETcollect_set将指定的列聚合为一个无重复元素的数组。
COVAR_POPcovar_pop计算指定两个数值列的总体协方差。
COVAR_SAMPcovar_samp计算指定两个数值列的样本协方差。
NUMERIC_HISTOGRAMnumeric_histogram统计指定列的近似直方图。
PERCENTILEpercentile计算精确百分位数,适用于小数据量。
PERCENTILE_APPROXpercentile_approx计算近似百分位数,适用于大数据量。
VARIANCE/VAR_POPvariance/var_pop计算指定数值列的方差。
VAR_SAMPvar_samp计算指定数值列的样本方差。
BITWISE_OR_AGGbitwise_or_agg计算输入Value的bit OR聚合值。
BITWISE_AND_AGGbitwise_and_agg计算输入Value的bit AND聚合值。
MAP_AGGmap_agg构造两个输入字段的Map。
MULTIMAP_AGGmultimap_agg构造两个输入字段的Map,第一个字段作为Map的Key,第二个字段构造数组作为Map的Value。
MAP_UNIONmap_union对输入Map进行Union操作来构造输出Map。
MAP_UNION_SUMmap_union_sum对输入Map进行Union操作并对相同Key的Value求和来构造输出Map。
HISTOGRAMhistogram构造输入Map的Key值出现次数的Map。

6、字符串函数

MaxCompute SQL支持的字符串函数如下。其中字符串函数的使用限制请参见字符串函数的使用限制。

函数小写功能
ASCIIascii返回字符串的第一个字符的ASCII码。
CHAR_MATCHCOUNTchar_matchcount计算A字符串出现在B字符串中的字符个数。
CHRchr将指定ASCII码转换成字符。
CONCATconcat将字符串连接在一起。
CONCAT_WSconcat_ws将参数中的所有字符串按照指定的分隔符连接在一起。
DECODEdecode将字符串按照指定编码格式解码。
ENCODEencode将字符串按照指定编码格式编码。
FIND_IN_SETfind_in_set在以逗号分隔的字符串中查找指定字符串的位置。
FORMAT_NUMBERformat_number将数字转化为指定格式的字符串。
FROM_JSONfrom_json根据给定的JSON字符串和输出格式信息,返回ARRAY、MAP或STRUCT类型。
GET_JSON_OBJECTget_json_object在一个标准JSON字符串中,按照指定方式抽取指定的字符串。
INITCAPinitcap将字符串转换为固定格式的字符串,单词之间以空格分隔。转换后的格式为:字符串中每个单词首字母大写,其余小写。
INSTRinstr计算A字符串在B字符串中的位置。
IS_ENCODINGis_encoding判断字符串是否可以从指定的A字符集转换为B字符集。
KEYVALUEkeyvalue将字符串拆分为Key-Value对,并将Key-Value对分开,返回Key对应的Value。
KEYVALUE_TUPLEkeyvalue_tuple将字符串拆分为多个Key-Value对,并将Key-Value对分开,返回多个Key对应的Value。
LENGTHlength计算字符串的长度。
LENGTHBlengthb计算字符串以字节为单位的长度。
LOCATElocate在字符串中查找另一指定字符串的位置。
LTRIMltrim去除字符串的左端字符。
MD5md5计算字符串的MD5值。
PARSE_URLparse_url对URL进行解析返回指定部分的信息。
PARSE_URL_TUPLEparse_url_tuple对URL进行解析返回多个部分的信息。
REGEXP_COUNTregexp_count计算字符串从指定位置开始,匹配指定规则的子串数。
REGEXP_EXTRACTregexp_extract将字符串按照指定规则拆分为组后,返回指定组的字符串。
REGEXP_INSTRregexp_instr返回字符串从指定位置开始,与指定规则匹配指定次数的子串的起始或结束位置。
REGEXP_REPLACEregexp_replace将字符串中,与指定规则在指定次数匹配的子串替换为另一字符串。
REGEXP_SUBSTRregexp_substr返回字符串中,从指定位置开始,与指定规则匹配指定次数的子串。
REPEATrepeat返回将字符串重复指定次数后的结果。
REVERSEreverse返回倒序字符串。
RTRIMrtrim去除字符串的右端字符。
SPACEspace生成空格字符串。
SPLIT_PARTsplit_part按照分隔符拆分字符串,返回指定部分的子串。
SUBSTRsubstr返回STRING类型字符串从指定位置开始,指定长度的子串。
SUBSTRINGsubstring返回STRING或BINARY类型字符串从指定位置开始,指定长度的子串。
TO_CHARto_char将BOOLEAN、BIGINT、DECIMAL或DOUBLE类型值转为对应的STRING类型表示。
TO_JSONto_json将指定的复杂类型输出为JSON字符串。
TOLOWERtolower将字符串中的英文字符转换为小写形式。
TOUPPERtoupper将字符串中的英文字符转换为大写形式。
TRIMtrim去除字符串的左右两端字符。
URL_DECODEurl_decode将字符串从application/x-www-form-urlencoded MIME格式转为常规字符。
URL_ENCODEurl_encode将字符串编码为application/x-www-form-urlencoded MIME格式。
JSON_TUPLEjson_tuple在一个标准的JSON字符串中,按照输入的一组键抽取各个键指定的字符串。
LPADlpad将字符串向左补足到指定位数。
RPADrpad将字符串向右补足到指定位数。
REPLACEreplace将字符串中与指定字符串匹配的子串替换为另一字符串。
SOUNDEXsoundex将普通字符串替换为SOUNDEX字符串。
SUBSTRING_INDEXsubstring_index截取字符串指定分隔符前的字符串。
TRANSLATEtranslate将A出现在B中的字符串替换为C字符串。
REGEXP_EXTRACT_ALLregexp_extract_all在字符串中查找所有出现的正则表达式匹配的子字符串,并把找到的字符串以数组形式返回。

7、复杂类型函数

MaxCompute SQL支持的复杂类型函数如下。其中JSON函数的使用限制请参见JSON函数的使用限制。

函数小写功能
ARRAY函数array函数
ALL_MATCHall_match判断ARRAY数组中是否所有元素都满足指定条件。
ANY_MATCHany_match判断ARRAY数组中是否存在满足指定条件的元素。
ARRAYarray使用给定的值构造ARRAY。
ARRAY_CONTAINSarray_contains检测指定的ARRAY中是否包含指定的值。
ARRAY_DISTINCTarray_distinct去除ARRAY数组中的重复元素。
ARRAY_EXCEPTarray_except找出在ARRAY A中,但不在ARRAY B中的元素,并去掉重复的元素后,以ARRAY形式返回结果。
ARRAY_INTERSECTarray_intersect计算两个ARRAY数组的交集。
ARRAY_JOINarray_join将ARRAY数组中的元素按照指定字符串进行拼接。
ARRAY_MAXarray_max计算ARRAY数组中的最大值。
ARRAY_MINarray_min计算ARRAY数组中的最小值。
ARRAY_POSITIONarray_position计算指定元素在ARRAY数组中第一次出现的位置。
ARRAY_REDUCEarray_reduce将ARRAY数组的元素进行聚合。
ARRAY_REMOVEarray_remove在ARRAY数组中删除指定元素。
ARRAY_REPEATarray_repeat返回将指定元素重复指定次数后的ARRAY数组。
ARRAY_SORTarray_sort将ARRAY数组的元素进行排序。
ARRAY_UNIONarray_union计算两个ARRAY数组的并集并去掉重复元素。
ARRAYS_OVERLAParrays_overlap判断两个ARRAY数组中是否包含相同元素。
ARRAYS_ZIParrays_zip合并多个ARRAY数组。
CONCATconcat将ARRAY数组或字符串连接在一起。
EXPLODEexplode将一行数据转为多行的UDTF。
FILTERfilter将ARRAY数组中的元素进行过滤。
INDEXindex返回ARRAY数组指定位置的元素值。
POSEXPLODEposexplode将指定的ARRAY展开,每个Value一行,每行两列分别对应数组从0开始的下标和数组元素。
SIZEsize返回指定ARRAY中的元素数目。
SLICEslice对ARRAY数据切片,返回从指定位置开始、指定长度的数组。
SORT_ARRAYsort_array为指定的数组中的元素排序。
TRANSFORMtransform将ARRAY数组中的元素进行转换。
ZIP_WITHzip_with将2个ARRAY数组按照位置进行元素级别的合并。
MAP函数map函数
EXPLODEexplode将一行数据转为多行的UDTF。
INDEXindex返回MAP类型参数中满足指定条件的Value。
MAPmap使用指定的Key-Value对建立MAP。
MAP_CONCATmap_concat返回多个MAP的并集。
MAP_ENTRIESmap_entries将MAP中的Key、Value键值映射转换为STRUCT结构数组。
MAP_FILTERmap_filter将MAP中的元素进行过滤。
MAP_FROM_ARRAYSmap_from_arrays通过给定的ARRAY数组构造MAP。
MAP_FROM_ENTRIESmap_from_entries通过给定的结构体数组构造MAP。
MAP_KEYSmap_keys将参数MAP中的所有Key作为数组返回。
MAP_VALUESmap_values将参数MAP中的所有Value作为数组返回。
MAP_ZIP_WITHmap_zip_with对输入的两个MAP进行合并得到一个新MAP。
SIZEsize返回指定MAP中的K/V对数。
TRANSFORM_KEYStransform_keys对MAP进行变换,保持Value不变,根据指定函数计算新的Key。
TRANSFORM_VALUEStransform_values对MAP进行变换,保持Key不变,根据指定函数计算新的Value。
STRUCT函数struct函数
FIELDfield获取STRUCT中的成员变量的取值。
INLINEinline将指定的STRUCT数组展开。每个数组元素对应一行,每行每个STRUCT元素对应一列。
STRUCTstruct使用给定Value列表建立STRUCT。
NAMED_STRUCTnamed_struct使用给定的Name、Value列表建立STRUCT。
JSON函数json函数
FROM_JSONfrom_json根据给定的JSON字符串和输出格式信息,返回ARRAY、MAP或STRUCT类型。
GET_JSON_OBJECTget_json_object在一个标准JSON字符串中,按照指定方式抽取指定的字符串。
JSON_TUPLEjson_tuple在一个标准的JSON字符串中,按照输入的一组键抽取各个键指定的字符串。
TO_JSONto_json将指定的复杂类型输出为JSON字符串。
JSON_OBJECTjson_object生成JSON OBJECT,要求key和value成对出现。
JSON_ARRAYjson_array生成JSON ARRAY。将一个可能为空的JSON类型对象,转换为包含这些类型的数组。
JSON_EXTRACTjson_extract解析JSON表达式中对应json_path的数据,注意json_path非法时会报错。
JSON_EXISTSjson_exists查看json_path对应的JSON值是否存在。
JSON_PRETTYjson_pretty美化JSON,增加换行及空格。
JSON_TYPEjson_type返回JSON数据所属的数据类型名称。
JSON_FORMATjson_format将JSON数据转换成STRING类型,默认不自动进行美化。
JSON_PARSEjson_parse将STRING类型转成JSON类型,非JSON格式转换为字符串会报错。
JSON_VALIDjson_valid检查字符串是否为合法的JSON格式。
CASTcast支持基本类型与JSON类型的转换。

8、加密函数

MaxCompute SQL支持的加密函数如下。

函数小写功能
SYM_ENCRYPTsym_encrypt对表里的指定列做随机性加密,返回BINARY类型的密文。
SYM_DECRYPTsym_decrypt对表里的指定已经随机性加密的列做解密,BINARY类型的明文。

9、其他函数

MaxCompute SQL支持的其他类型函数如下。

函数小写功能
BASE64base64将二进制表示值转换为BASE64编码格式字符串。
BETWEEN ANDbetween and筛选满足区间条件的数据。
CASE WHENcase when根据表达式的计算结果,灵活地返回不同的值。
CASTcast将表达式的结果转换为目标数据类型。
COALESCEcoalesce返回参数列表中第一个非NULL的值。
COMPRESScompress对STRING或BINARY类型输入参数按照GZIP算法进行压缩。
CRC32crc32计算字符串或二进制数据的循环冗余校验值。
DECODEdecode实现if-then-else分支选择的功能。
DECOMPRESSdecompress对BINARY类型输入参数按照GZIP算法进行解压。
GET_IDCARD_AGEget_idcard_age根据身份证号码返回当前的年龄。
GET_IDCARD_BIRTHDAYget_idcard_birthday根据身份证号码返回出生日期。
GET_IDCARD_SEXget_idcard_sex根据身份证号码返回性别。
GET_USER_IDget_user_id获取当前账号的账号ID。
GREATESTgreatest返回输入参数中最大的值。
HASHhash根据输入参数计算Hash值。
IFif判断指定的条件是否为真。
LEASTleast返回输入参数中最小的值。
MAX_PTmax_pt返回分区表的一级分区的最大值。
NULLIFnullif比较两个入参是否相等。
NVLnvl指定值为NULL的参数的返回结果。
ORDINALordinal将输入变量按从小到大排序后,返回指定位置的值。
PARTITION_EXISTSpartition_exists查询指定的分区是否存在。
SAMPLEsample对所有读入的列值,采样并过滤掉不满足采样条件的行。
SHAsha计算字符串或二进制数据的SHA-1哈希值。
SHA1sha1计算字符串或二进制数据的SHA-1哈希值。
SHA2sha2计算字符串或二进制数据的SHA-2哈希值。
SIGNsign判断正负值属性。
SPLITsplit将字符串按照指定的分隔符分割后返回数组。
STACKstack将指定的参数组分割为指定的行数。
STR_TO_MAPstr_to_map将字符串按照指定的分隔符分割得到Key和Value。
TABLE_EXISTStable_exists查询指定的表是否存在。
TRANS_ARRAYtrans_array将一行数据转为多行的UDTF,将列中存储的以固定分隔符格式分隔的数组转为多行。
TRANS_COLStrans_cols将一行数据转为多行数据的UDTF,将不同的列拆分为不同的行。
UNBASE64unbase64将BASE64编码格式字符串转换为二进制表示值。
UNIQUE_IDunique_id返回一个随机ID,运行效率高于UUID函数。
UUIDuuid返回一个随机ID。

相关文章:

DataWorks函数

文章目录 0、MaxCompute预置的函数分类1、日期函数2、数学函数3、算术运算符4、窗口函数5、聚合函数6、字符串函数7、复杂类型函数8、加密函数9、其他函数 0、MaxCompute预置的函数分类 函数类型说明日期函数支持处理DATE、DATETIME、TIMESTAMP等日期类型数据,实现…...

设计模式学习优质网站分享:refactoring.guru

地址 英文版地址:https://refactoring.guru/design-patterns 中文版地址:https://refactoringguru.cn/design-patterns 介绍 这个网站是专门学习 设计模式 和 软件重构 的网站 整体来说并不花哨,但我觉得他最大的优点就是: 概…...

JVM-Java的四种引用

引用分析 无论是通过引用计数算法判断对象的引用数量,还是通过可达性分析算法判断对象是否可达,判定对象是否可被回收都与引用有关,Java 提供了四种强度不同的引用类型 强引用: 被强引用关联的对象不会被回收,只有所…...

探索《黑神话:悟空》品质保障的背后:ISO体系认证

《黑神话:悟空》横空出世 8月20日上午10点,国产首款大型3A游戏《黑神话:悟空》正式上线。游戏一经上线便吸引了无数国内外用户的关注,不仅仅是因为其高超的游戏制作技术,极高的画面精度,精良的的视觉和战斗…...

ArcGIS Pro 实现人口分布栅格TIFF数据的网格提取与可视化

这里在分享一个人口1km精度栅格数据,LandScan是由美国能源部橡树岭国家实验室(ORNL)提供的全球人口分布数据集,具有最高分辨率的全球人口分布数据,是全球人口数据发布的社会标准,是全球最为准确、可靠&…...

select的缺点;poll ;poll的缺点;epoll

1.select的缺点: 1.select监听的文件描述符集合是一个数组,有上限(1024个) 2.select监听的文件描述符集合在应用层,内核层监听事件后需要传递给用户层带来资源开销 3.select需要用户手动查找产生事件的文件…...

keli5_报错 Cannot Load Device Description问题

1原因 之前创建的keli5的项目软件版本与当前的软件版本不同 使其算法要重新选择 2解决方法 2-1 点击图中的魔术棒 2-2 在这个界面中进入 Settings选项(ST-Link Debugger 旁边) 2-3 点击Flash Download 选项进入图中界面 在点击天加 2-4选择fla…...

算法的学习笔记—把二叉树打印成多行(牛客JZ78)

😀前言 在算法面试中,二叉树的层序遍历是一个经典的题目。而这道题的要求是进一步将二叉树的每一层结点值打印成多行,即同一层结点从左至右输出,最终结果存放到一个二维数组中返回。接下来,我们将通过代码实例详细解析…...

FreeRTOS 时间管理

延时函数介绍 函数 描述 vTaskDelay() 相对延时 xTaskDelayUntil() 绝对延时 相对延时:指每次延时都是从执行函数vTaskDelay()开始,直到延时指定的时间结束 绝对延时:指将整个任务的运行周期看成一个整体,适用于需要按…...

F. Valuable Cards D. Smithing Skill

D题 F题 F题: 因为是连续的且都要选,我们直接从左到右去取每个区间到不合法的情况即可,可以在n1的位置添加一个x来结束区间判断。因为是要乘积为x,那么我们只需要放x的因子进去,不然会超时,同时也可以用v…...

【电子通识】IPC-A-600中对验收标准的定义

在文章【电子通识】IPC-A-610标准对产品的四种验收条件都是什么意思?中我们讲到IPC-A-610标准(电子组件的可接受性)对于产品的四种验收条件。本文中我们同理讲一讲IPC-A-600中对验收标准的定义。 IPC-A-600文件中的多数示意图和照片同时表示每…...

MyBatis(初阶)

1.什么是MyBtis MyBatis是持久层框架,⽤于简化JDBC的开发。 2.准备工作 2.1 创建⼯程 数据库: 2.2 配置数据库连接字符串 以application.yml⽂件为例: 2.3 写持久层代码 Data public class UserInfo {private Integer id;private String username;private Stri…...

KDP数据平台:以实战案例验证技术领先力

本文由智领云 LeetTools 工具自动生成 申请试用: https://www.leettools.com/feedback/ 在当今快速发展的技术环境中,数据平台的选择对企业的数字化转型和业务发展至关重要。智领云开源KDP(Kubernetes Data Platform)在数据处理和…...

[Linux] 什么是 Shell?

一、什么是 shell ? shell在英语中的意思就是外壳,所以我们习惯称shell程序为壳程序。那为什么又会被叫做壳程序呢?那是因为shell程序是在内核上面的,属于操作系统的外壳部分,因此我们就称之为壳程序(shell)。 在 Linux 中&#…...

大模型学习应用 2:快速上手大模型基于langchain实现RAG检索应用

快速上手大模型基于langchain实现RAG检索应用 - 项目作业 目录 准备工作镜像选择算力选择安装包数据说明提示参考链接 Task1 申请 api 后,使用 langchain 导入大模型,并打印出大模型信息Task2 使用 langchian 加载数据,并把数据打印出来Task…...

python环境安装之后,cmd输入python回车会打开微软商店

坑爹!python环境安装之后,cmd输入python回车会打开微软商店 最近发现,安装python环境成功之后,可能会出现cmd输入python验证是否安装成功老会打开微软商店! 解决,打开系统环境配置,找到刚安装…...

USB Type-C如何取9V、12V、15V、20V电压-PD快充协议芯片ECP5701

相信大家在生活中也发现了,现在越来越多的设备都改用这种type-C接口的母座进行取电了。 因为欧盟决议 :自2024年起部分消费电子产品必须提供单一的USB-C充电接口。 那么这种type-C接口相比之前的Micro-B接口有着一个很大的优势就是可以有更高的电压&…...

Go 语言 Map 17

Go 语言提供了一个强大的 Map 结构体,用于存储键值对。Map 可以用来存储数据,快速查找和修改数据。下面是 Go 语言 Map 的使用教程。 什么是 Map? Map 是一个键值对的集合,它可以存储任意类型的键和值。Map 中的每个键都是唯一的…...

移植bash到openharmony

1.交叉工具链 下载地址: http://ci.openharmony.cn/workbench/cicd/dailybuild/dailylist 进入ohos-sdk-full,下载一个sdk版本,这里下载的版本是version-Master_Version-OpenHarmony_5.0.0.35-20240805_020232-ohos-sdk-full.tar.gz。 解…...

git stash详细教程

git stash详细教程 基本命令: git stash: 保存当前未提交的更改,并恢复到干净的工作目录。git stash list: 列出所有的 stash。git stash show: 显示最新 stash 的简要内容。git stash show -p: 显示最新 stash 的详细内容。 应用和删除: git stash apply: 应用最新…...

UDP网络攻击

UDP(User Datagram Protocol)作为一种无连接的网络传输协议,以其速度快和资源消耗小的特点,在多种网络服务中发挥着重要作用,UDP的无连接特性也使其成为DDoS攻击的优选协议。 UDP攻击概念 UDP攻击是一种网络攻击手段…...

漏洞扫描的重要性,如何做好漏洞扫描服务

随着互联网技术的飞速发展,网络安全问题已成为不容忽视的重大挑战。其中,系统漏洞威胁作为最常见且严重的安全危险之一,对组织和个人的信息资产构成了巨大威胁。下面我们就来了解下漏洞扫描的好处、漏洞扫描的操作方法以及如何做好网络安全。…...

unity程序简易框架

1. 框架基本结构 2. 单例模式基类模块 2.1 BaseManager.cs using System.Collections; using System.Collections.Generic; using UnityEngine;public class BaseManager<T> where T:new() {private static T instance;public static T GetInstance(){if (instance == …...

Go小技巧易错点100例(十六)

本期看点&#xff1a; 正文开始&#xff1a; 切片的长度和容量 在Go语言中&#xff0c;切片&#xff08;slice&#xff09;是一个引用类型&#xff0c;它是对底层数组的抽象表示&#xff0c;提供了动态长度的、灵活的序列类型。切片包含三个重要的属性&#xff1a;指向底层数…...

通过Golang实现中间人攻击,查看和修改https流量包

要查看和修改 HTTPS 流量包&#xff0c;需要使用一个能够执行 中间人攻击&#xff08;Man-in-the-Middle, MITM&#xff09; 的代理工具。这个工具将拦截并解密 HTTPS 流量&#xff0c;然后允许查看和修改流量包的内容&#xff0c;再将其重新加密并发送到目标服务器。 完整的 …...

MySQL 安装与配置指南

MySQL 是一种广泛使用的关系型数据库管理系统&#xff0c;为各种应用程序提供高效的数据存储和管理解决方案。本文将介绍如何在不同的操作系统中安装 MySQL&#xff0c;以及如何进行基本的配置&#xff0c;以确保数据库系统的最佳性能和稳定性。 一、环境准备 1.1 系统要求 …...

android13布局查看工具 无源码查看布局 在线查找ui布局id

总纲 android13 rom 开发总纲说明 目录 1.前言 2.工具介绍 2.1工具1 2.2工具2 2.3工具3 2.4工具4 3.彩蛋 1.前言 Android 13提供了一些工具来帮助开发人员查看和优化应用的布局。方便的让我们找到具体应用的布局文件等信息。 2.工具介绍 2.1工具1 老版本DDMS&#x…...

【自动化测试必学语言】python:UnitTest框架

目录 介绍 框架 什么是UnitTest框架&#xff1f; 为什么使用UnitTest框架? UnitTest核心要素&#xff08;unitest 的组成部分&#xff09; 1.TestCase&#xff08;最核心的模块&#xff09; 2.TestSuite 3.TestRunner 4.TestLoader 5.Fixture TestCase&#xff08…...

大话LLM之向量数据库

向量数据库是一种专门设计的存储系统&#xff0c;旨在高效处理和查询高维向量数据&#xff0c;通常用于人工智能和机器学习应用中&#xff0c;以实现快速准确的数据检索。 好的&#xff0c;今天我们就来聊聊人工智能和向量数据库的事儿。现在人工智能发展得特别快&#xff0c;特…...

EmguCV学习笔记 C# 2.2 Matrix类

版权声明&#xff1a;本文为博主原创文章&#xff0c;转载请在显著位置标明本文出处以及作者网名&#xff0c;未经作者允许不得用于商业目的。 EmguCV学习笔记目录 Vb.net EmguCV学习笔记目录 C# 笔者的博客网址&#xff1a;VB.Net-CSDN博客 教程相关说明以及如何获得pdf教…...

网站导航上的图片做多大尺寸/seo和竞价排名的区别

一个完整的信号一定是以0开始然后以0结尾的,输入一串方波信号是由一个或者多个完整信号组成的,两个相邻的信号之间可能有-个或者多个低位, 同一个信号中间可以有连续的高位,完全连续交替方波是指0交替, while 1:try:nums = input()# 提取信号段,由0分隔的信号段dp = []…...

顺德龙江网站建设/网络营销方案策划书

Java I/O流-总结(InputStream&#xff0c;OutputStream,Reader,Writer)2014-08-22一、 流的分类 按数据流动方向– 输入流&#xff1a;只能从中读取字节数据&#xff0c;而不能向其写出数据– 输出流&#xff1a;只能向其写入字节数据&#xff0c;而不能从中读取数据 按照…...

网站的界面设计怎么做/昆明seo技术培训

需求描述 本次实验需要了解到RDD编程的基础知识&#xff0c;明白RDD是Spark的核心概念&#xff0c;它是一个只读的、可分区的分布式数据集&#xff0c;这个数据集可全部或部分缓存在内存中&#xff0c;在多次计算间重用。其中包括RDD的创建、操作API、持久化和分区等。 熟悉Sp…...

贵阳网站建设方案报价/培训seo

2005-07-05我下载的是cs1.5的&#xff0c;不知道该怎么连网和别人一起打&#xff0c;你知道吗&#xff1f;cs1.5的能添加cs1.6的服务器吗&#xff1f;怎么添加&#xff1f;谢谢1。cs1。5中&#xff0c;在菜单里找“网上对战”。进入以后&#xff0c;左边里找“服务器”&#xf…...

wordpress手机端和pc端兼容/seo快速排名软件平台

底层采用了第三方的socket库&#xff1a;CocoaAsyncSocket&#xff0c;里面包含了GCDAsyncSocket.h和GCDAsyncSocket.m文件。阅读源码可以发现&#xff0c;GCDAsyncSocket中已经对ipv4和ipv6同时做了支持&#xff0c;但是为何在ipv6情况下会connect失败呢。根据代码执行过程可以…...

网站开发论文中期检查表/深圳网站seo哪家快

之前选择器可以完成的功能&#xff0c;筛选也提供了相同的函数 筛选函数介绍 eq(index|-index)   类似:eq()index:正数&#xff0c;从头开始获得指定所有的元素&#xff0c;从0算起&#xff0c;0表示第一个-index:负数&#xff0c;从尾开始获得指定索引的元素&#xff0c;1算…...