opengauss概述-基础知识篇-备考华为高斯

目录

🧨考前准备:

🎡数据库操作语言

✨OLTP和OLAP

🎯常用函数

 🧲字符处理函数

关于 left 和 right    

 特别重点的字符串函数

🧲数字操作函数

关于 ceil 和 floor

 🧲时间和日期处理函数

🧲几何函数


🧨考前准备:

🧨🧨🧨🧨高斯预约考试必备🧨🧨🧨🧨

注册华为ID的网址:https://e.huawei.com/cn/talent/portal/#/)

双证件:身份证+第二证件(军官证,驾照,信用卡,在校学生证,社保卡,有效期工作证)

🎡数据库操作语言

数据库操作语言
DDL(Data Definition Language)数据定义语言
DML(Data Manipulation Language)数据操作语言
DQL(Data Query Language)数据查询语言
DTL(Data Transaction Language)数据控制语言

原图

亿图图示icon-default.png?t=N7T8https://www.edrawmax.cn/online/share.html?code=4173096c07ce11ef9109ebf0f0121b46 

✨OLTP和OLAP

原图 

亿图图示icon-default.png?t=N7T8https://www.edrawmax.cn/online/share.html?code=12a56234049e11ef94adf9ef8352e1d6 

联机事务处理OLTP

OLTP是传统的关系型数据库的主要应用,事务性非常高的系统,一般都是高可用的在线系统,

小的事务以及小的查询为主,主要是基本的日常的事务处理,例如 银行交易。

OLTP 系统强调数据库内存效率,评估其系统的时候,一 般看其每秒执行的Transaction以及

Execute SQL的数量。 强调内存各种指标的命令率,强调绑定变量,强调并发 操作

联机分析处理OLAP

OLAP是数据仓库系统的主要应用,支持复杂的分析操作, 侧重决策支持,并且提供直观易懂的查

询结果。。

OLAP系统则强调数据分析,考核的标准往往是磁盘子系统的吞吐量(带宽),强调SQL执行时

长,强调磁盘 I/O,强调分区等。

🎯常用函数

常用函数
                          预置脱敏函数
                          字符串处理函数
                          数字操作函数
                        时间日期操作函数
                        类型转换函数
                         几何函数

预置脱敏函数(隐私数据保护)
动态数据脱敏机制是一种通过定制化制定脱敏策略从而实现对隐私数据保护的一种技术,可以有效地 在保留原始数据的前提下解决非授权用户对敏感信息的访问问题。
当管理员指定待脱敏对象和定制数据脱敏策略后,用户所查询的数据库资源如果关联到对应的脱敏策略时,则会根据用户身份和脱敏策略进行数据脱敏,从而限制非授权用户对隐私数据的访问。

   * creditcardmasking:对后四位之前的数字进行脱敏 * email:邮箱相关* full:全部* shuffle:洗牌 * maskall:全部脱敏 
*/

脱敏函数名示例
creditcardmasking'4880-9898-4545-2525' 将会被脱敏为'xxxx-xxxx-xxxx-2525',该函数仅对后4位之前的数字进行脱敏
basicemailmasking'abcd@gmail.com' 将会被脱敏为'xxxx@gmail.com'出现第一个'@'之 前的文本进行脱敏
fullemailmasking'abcd@gmail.com' 将会被脱敏为'xxxx@xxxxx.com',对出现最后一 个'.'之前的文本  (除'@'符外)进行脱敏
alldigitsmasking

'alex123alex' 将会被脱敏为'alex000alex',

仅对文本中的数字进行脱敏

shufflemasking序排列的方式实现,属于弱脱敏函数,语义较强的字符串不建议使用该函数脱敏
randommaskin

'hello word' 将会被脱敏为  'ad5f5ghdf5',

将文本按字符随机脱敏

maskall

'4880-9898-4545-2525'

将会被脱敏为'xxxxxxxxxxxxxxxxxxx'

 🧲字符处理函数

/*** char_length:获取字符串中的字符个数 * lengthb:获取指定字符串的字节数* rawcat:字符串拼接函数 * reverse:返回颠倒的字符串* left(str text, n int):返回字符串的前n个字符 * right(str text, n int):返回字符串的后n个字符 
*/
字符串常用处理函数
字符处理函数功能示例
char_length(string)字符串中的字符个数char_length('hello') 
//5
length(text/bpchar)获取指定字符串的字节数

lengthb('hello')  

//5

left(str text,n int)返回字符串的前n个字符。当n是负数时, 返回除最后|n|个字 符以外的所有字符。

left('abcde', 2)

// ab

right(str text,n int)返回字符串中的后n个字符。当n是负值 时,返回除前|n|个字 符以外的所有字符。right('abcde',  2) 
//de
lpad(string  text, 
length int [,  fill text])
通过填充字符fill(缺省时为空白),把 string填充为length长度。 如果string已经比length长则将其尾部断。lpad('hi', 5,  'xyza') 
//xyzhi
rpad(string  text, 
length int [,  fill text]
通过填充字符fill(缺省时为空白),把 string填充为length长度。 如果string已经比length长则将其尾部断。rpad('hi',  5,  'xy') 
hixyx
notlike(x  bytea 
name  text,  y  bytea text)
比较x和y是否不一致notlike(1,2) // t 
notlike(1,1) // f
rawcat(raw,raw)字符串拼接函数rawcat('ab','cd') 
//abcd
reverse(str)返回跌倒的字符串reverse('abcde') 
//edcba
关于 left right    

left 正数  如图所示left2

 left 负数

 right 正数

right 负数

 

 

 特别重点的字符串函数

instr(string1,string2,int1,int2)

查询对应原字符串匹配字符串的对应的索引值

overlay(string1 placing string2 FROM int1 [for int2])

将原字符串中需匹配替换字符串替换成对应字符串

substring(string [FROM int1] [for int2])

将原字符根据索引和字符条目个数截取相应字符串
replace(string text, FROM text, to text)将原字符串里出现(FROM text)所有字符串替换成(to text)字符串

原图

亿图图示icon-default.png?t=N7T8https://www.edrawmax.cn/online/share.html?code=dca0930209c511ef84030bfa047a2703

🧲数字操作函数

/*** ceil(x):不小于参数的最小整数,ceil(-42.8)  结果为    -42 * floor(x):不大于参数的最大整数,ceil(-42.8)  结果为    -43 
*/

数字操作函数
数字操作函数功能示例
ceil(x)不小于参数的最小的整数

ceil(-42.8)

// -42

floor(x)不大于参数的最大整数

floor(-42.8)

//-43

log(x)以10为为底的对数

log(100.0)

//2.0000000000000000

div(y numeric , x numeric)y除以x的商的整数部分

div(9,4)

//2

trunc(x)截断(去整数部分)

trunc(42.8)

//42

cbort(dp)立方根

cbrt(27.0)

//3

mod(x,y)x/y的余数(模) 如果x是0,则返回0

mod(9,4)

//1

power(a double precision,

b double precision)

a的b次幂

power(9.0,3.0) 

// 729.0000000000000000

关于 ceil floor

时间日期操作函数

时间和日期操作符 + 

postgres=# SELECT date '2021-5-28' + integer '7' AS RESULT;  
result
-----
2021-06-04 00:00:00

时间和日期操作符 -

postgres=# SELECT date '2021-05-01' - date '2021-04-28' AS RESULT; 
result
----- 
3 days

 🧲时间和日期处理函数

时间和日期函数
时间和日期函数功能示例
age(timestamp, timestamp)将两个参数相减,并以年、月、日作 
为返回值。 若相减值为负,则函数 
返回亦为负,入参可以 都带
timezone或都不带timezone。

age(timestamp  '2020-05-04', timestamp 
'2000-01-01') 

//20年5月3日

age(timestamp)当前时间和参数相减,入参可以带或 
者不带  timezone。

age(timestamp '2000-01-01') 

假设现在是2024-5-4日

//24 年 5月 3日

current_date当前日期

current_date

//2024-05- 04

date_part(text, 
timestamp)
获取日期/时间值中子域的值,例如年或者小时  的值

date_part('hour', 
timestamp  '2000-05-04 20:38:40') 

//20

trunc(timestamp)默认按天截取trunc(timestamp
'2024-05-04  20:38:40') 
//2024-05-04 00:00:00
sysdate当前日期及时间

sysdate 

//2024-05-04-12:34:89

justify_days(interval)将时间间隔以月(30天为一月)为单 
位。

justify_days(interval 
'35 days')  

//1 mon  5 days

pg_sleep(seconds)服务器线程延迟时间,单位为秒pg_sleep(10
last_day(d)用于计算时间点d当月最后一天时间

last_day(to_date('2024- 
05-01',  'YYYY-MM-DD')) 

//2024-05-04  00:00:00

类型转换函数

/*** cast(x as y): 将    x 转换为    y 指定的类型* hextoraw(string):十六进制转二进制* rawtohex(string):二进制转十六进制* convert_to_nocase(text, text):转换编码* numtoday(numeric): 将数字类型的值转为指定格式的时间戳 
*/

 

类型转换函数功能示例
cast(x as y)类型转换函数,将x转换成y指定的类型cast('22-oct-1997' as timestamp) 
//1997-10-22 00:00:00
hextoraw(String)将一个十六进制的字符串转换成二进制

hextoraw('7D')

//7D

numtoday(numeric)将数字类型的值转换为指定 
格式的时间戳

numtoday(2)

//2 days

pg_systimestamp()获取系统时间戳

pg_systimestamp()

//2024-05-04 
11:21:28.317367+08

rawtohex(string)将二进制构成的字符串转换成十六进制的字符串rawtohex('1234567') 
//31323334353637
to_bigint(varchar)将字符类型转换为bigint类 型。to_bigint('123364545554455') 
//123364545554455
to_timestamp(text, 
text)
将字符串类型的值转换为指 
定格式的时间戳。

to_timestamp('05 Dec 2000', 'DD 
Mon YYYY')

//2000-12-05 00:00:00

convert_to_nocase(text, 
text)
将字符串转换为指定的编码类型。convert_to_nocase('12345', 'GBK') 
// \x3132333435

🧲几何函数

 

/*** area: 面积* center:中心* height:高度* width:宽度* path:路径* radius:半径* circle:圆* polygon:多边形* point:顶点
*/

 几何函数

几何函数功能示例
area(object)计算图形面积

area(box'((0,0),(1,1))')

//1

cener(object)计算图形的中心

center(box'((0,0),(1,2))')

//(0.5,1)

diameter(circle)计算圆的直径

diameter(circle'((0,0),(2,0))')

//4

height(box)矩形的竖直高度

height(box'((0,0),(1,1))') 

//1

isclose(path)图形是否为闭合路径

isclose(path'((0,0),(1,1)),(2,0))')

//t

isopen(path)图形是否为开放路径

isopen(path'[(0,0),(1,1)),(2,0)]')

//t

length(object)计算图形长度

length(path'((-1,0)),(2,0))')

//3

npoints(path)计算路径的顶点数

npoints(path'((0,0)),(1,1),(2,0))')

//3

npoints(polygon)

计算多边形的顶点数

npoints(polygon'((0,0)),(1,1)')

//2

pclose(parh)把路径装转换成闭合路径

pclose(path'[(0,0),(1,1)),(2,0)]')

//((0,0),(1,1),(2,0))

popen(path)把路径装转换成开放路径

popen(path'((0,0),(1,1)),(2,0))')

//[(0,0),(1,1),(2,0)]

radius(circle)计算圆的半径

radius(circle'((0,0),(2,0))')

//2

width(box)计算矩形的水平尺寸

width(box'((0,0),(1,1))')

//1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/6663.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

专项技能训练五《云计算网络技术与应用》实训7-1:安装mininet

文章目录 mininet安装1. 按6-1教程安装opendaylight控制器。2. 按6-2教程安装RYU控制器。3. 按5-1教程安装openvswitch虚拟交换机并开启服务。4. 将老师所给mininet安装包试用winSCP传送至电脑端。5. 安装net-tools。6. 安装mininet7. 安装完成后,使用命令建立拓扑&…

【网络安全产品】---应用防火墙(WAF)

what Web应用防火墙(Web Application Firewall) WAF可对网站或者App的业务流量进行恶意特征识别及防护,在对流量清洗和过滤后,将正常、安全的流量返回给服务器,避免网站服务器被恶意入侵导致性能异常等问题,从而保障…

快速了解Django:核心概念解析与实践指南

title: 快速了解Django:核心概念解析与实践指南 date: 2024/5/1 20:31:41 updated: 2024/5/1 20:31:41 categories: 后端开发 tags: Django核心路由系统视图系统ORM管理中间件Web框架登录装饰器 第一章:Django简介 背景和发展历程: Djan…

计算机毕业设计springboot基于vue电商抢购限时秒杀系统ch0h8

技术栈 ide工具:IDEA 或者eclipse 编程语言: java 数据库: mysql5.7以上版本 可选框架:ssmspringboot都有的 前端:vue.jsElementUI 详细技术:springbootSSMvueMYSQLMAVEN 数据库工具:Navicat/SQLyog都可以 开发工具 Ec…

【算法设计与分析】六、动态规划:(二)上机-1、地牢逃生【理论到程序】

文章目录 一、题目1、问题2、输入输出要求3、样例说明4、数据范围 二、思路1、GPT4 - fail算法解释C 实现 2、Claude3 - fail问题分析算法实现 3、个人拙见 - succeed 三、代码实现 一、题目 1、问题 用一个 nn 的矩阵表示一座地牢,矩阵中第 i 行第 j 列的方格的值…

力扣每日一题106:从中序与后序遍历序列构造二叉树

题目 中等 相关标签 相关企业 给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗 二叉树 。 示例 1: 输入:inorder [9,3,15,20,7], postorder …

OpenCV(五) —— 人脸识别模型训练与 Windows 下的人脸识别

本文主要内容: 如何训练 OpenCV 的人脸识别模型如何在 Windows 下利用 OpenCV 进行人脸识别 1、概述 人脸识别需要人脸模型(特征集合)的支持,人脸定位的速度与准确度取决于模型。 OpenCV 提供了已经训练好的模型,无…

KAN网络认识

首先,这是一个基于柯尔莫哥洛夫-阿诺德表示定理的网络。这个定理指出如果函数f是定义在有界域上的多变量连续函数(即最终要拟合的非线性函数是连续的),那么该函数就可以表示为多个单变量、加法连续函数的有线组合。 对于机器学习…

大数据BI可视化(Echarts组件)项目开发-熟悉交互API5.0

全局echarts对象 init初始化 registerTheme注册主题 var mCharts echarts.init(document.querySelector("div"), itcast)registerMap地图图表 connect 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8&qu…

OpenCV(六) —— Android 下的人脸识别

本篇我们来介绍在 Android 下如何实现人脸识别。 上一篇我们介绍了如何在 Windows 下通过 OpenCV 实现人脸识别&#xff0c;实际上&#xff0c;在 Android 下的实现的核心原理是非常相似的&#xff0c;因为 OpenCV 部分的代码改动不大&#xff0c;绝大部分代码可以直接移植到 …

ubuntu安装LVGL/lv_img_conv并在thinkphp中进行调用生成bin文件

项目需求&#xff1a;需要处理图片成为bin文件&#xff0c;并以二进制的方式传给蓝牙设备&#xff0c;当前仅介绍如何安装&#xff0c;对lvgl功能和简介不做过多描述 项目库地址&#xff1a;https://github.com/lvgl/lv_img_conv 安装过程比较简单 一&#xff0c;确保node.j…

mall-cook本地部署运行

下载源代码 https://github.com/wangyuan389/mall-cook 下载好之后解压&#xff0c;删除.github和yarn.lock&#xff0c;因为使用pnpm 启动文档部署 切换到packages\mall-cook-document&#xff0c;删除yarn.lock&#xff0c;安装依赖包pnpm install 执行pnpm dev启动文档…

C语言/数据结构——(用双链表实现数据的增删查改)

一.前言 嗨嗨嗨&#xff0c;大家好久不见&#xff01;前面我们已经通过数组实现数据的增删查改、单链表实现数据的增删查改&#xff0c;现在让我们尝试一下使用双链表实现数据的增删查改吧&#xff01; 二.正文 如同往常一样&#xff0c;对于稍微大点的项目来说&#xff0c;…

推荐网站(2)今日热榜合集,看不同软件的热点事件

当我们想要看微博&#xff0c;今日头条&#xff0c;bilibili等等今日热点时&#xff0c;需要打开对应的app查看&#xff0c;但是有了这个网站我们可以看不同平台的热点消息&#xff0c;甚至京东&#xff0c;淘宝等购物软件&#xff0c;也能看到热销总榜。 链接直达&#xff1a;…

day-28 除自身以外数组的乘积

思路 利用两个空数组left&#xff08;left[i]表示nums下标从0到i的乘积&#xff09;和right&#xff08;right[i]表示nums下标从n-1到i的乘积&#xff09; 解题方法 返回数组nums[i]right[i1]*left[i-1],第一个元素和最后一个元素单独考虑 Code class Solution {public int[…

【计算机网络】计算机网络的定义和分类

一.定义 计算机网络并没有一个精确和统一的定义&#xff0c;在计算机网络发展的不同阶段&#xff0c;人们对计算机网络给出了不同的定义&#xff0c;这些定义反映了当时计算机网络技术的发展水平。 例如计算机网络早期的一个最简单定义&#xff1a;计算机网络是一些互连的、自…

c#Excel:2.写入Excel表 3.读取Excel表

--写入Excel表-- 该例首先从数据库aq中读取学生信息表staq(参考数据库章节)&#xff0c;然后将学生信息表中的数据写入Excel表格中 &#xff08;1&#xff09;在OfficeOperator类库项目的ExcelOperator类中定义索引器&#xff0c;用于获取Excel表格中的单元格&#xff0c;代码…

队列集使用

文章目录 前言一、功能描述二、功能实现 前言 在实际使用中我们可能要从多个队列中得到数据&#xff0c;就需要队列集。 一、功能描述 创建两个队列Queue1、Queue2。Task1往Queue1写数据、Task2往Queue2写数据。Task3使用QueueSet监测这两个队列。 二、功能实现 创建两个队列…

ArcGIS软件:地图投影的认识、投影定制

这一篇博客介绍的主要是如何在ArcGIS软件中查看投影数据&#xff0c;如何定制投影。 1.查看地图坐标系、投影数据 首先我们打开COUNTIES.shp数据&#xff08;美国行政区划图&#xff09;&#xff0c;并点击鼠标右键&#xff0c;再点击数据框属性就可以得到以下的界面。 我们从…

活动图与状态图:UML中流程图的精细化表达——专业解析系统动态性与状态变迁

流程图是一种通用的图形表示法&#xff0c;用以展示步骤、决策和循环等流程控制结构。它通常用于描述算法、程序执行流程或业务过程&#xff0c;关注于任务的顺序执行。流程图强调顺序、分支和循环&#xff0c;适用于详细说明具体的处理步骤&#xff0c;图形符号相对基础和通用…