好记性不如蓝笔头

萌萌哒~

Postgresql去重函数distinct https://blog.csdn.net/Tastill/article/details/80005901
PostgreSQL按照某一字段去重,并显示其他字段信息 https://blog.csdn.net/hsz2568952354/article/details/89452752
select distinct on(字段) * from 表

pgsql先分组后排序 row_number() over(partition by 列名 order by 列名 desc)
获取每个班的前1(几)名
select * from
(
select *,row_number() over(partition by Grade order by Score desc) as Sequence from Student
) T where T.Sequence<=1

pgsql 行转列 (单行)
regexp_split_to_table(列名, ‘用什么拆分’);

pgsql 列转行 (多行) crosstab https://blog.csdn.net/hexin373/article/details/19242833

pgsql 列转行 https://www.jianshu.com/p/31c586446512

pgsql COALESCE — 空值替换函数
示例:COALESCE(col, ‘replacement’) :如果col列的值为null,则col的值将被替换为’replacement’

pgsql json_array_elements(tag_data_json)->>‘tagColumn’ 把json集合里的每个元素都取出来

pgsql 多列转一列 row()
row(列名,列名,…)

pgsql 转对象(json) row_to_json();
row_to_json(row(列名,列名,…))

pgsql 聚合 一列多行转成一行 array_agg()
array_agg(row_to_json(row(列名,列名,…)))

pgsql 把数组转json array_to_json()
array_to_json(array_agg(row_to_json(row(列名,列名,…))))

在sql中把数据组装成对象 stu_id,stu_name 字段名 stuId stuName 组装后的属性名

replace(replace(array_to_json(array_agg(row_to_json(ROW(stu_id,stu_name))))::VARCHAR, ‘“f1”’, ‘“stuId”’),’“f2”’,’“stuName”’)::jsonb

pgsql 一列多行转成一行 string_agg(列名,'分隔符 比如 , - 'order by 列名)

第一个参数表示需要合并的字段或者表达式。

第二个参数表示以什么符号进行将第一个参数进行链接起来,一般都是使用','。

第三个参数为可选项,表示将第一列的字段以怎样的排序进行合并。
string_agg(列名 ,',' order by 列名 desc)

pgsql 字符串或者非字符串拼接 ||
1000||’-’||abc||’+’||200
pgsql concat(’’,’’) - 字符串拼接

pgsql 只取中文名字 eg: 小可爱11002152 --> 小可爱

regexp_replace(a.manager,’[\d|a-z|A-Z]+’,’’, ‘g’) sales_name

★★★ (序列)
pgsql 给已有字段设置自增长(给字段添加序列) (PostgreSQL修改字段ID自增长 https://my.oschina.net/u/4043279/blog/3002216)
https://blog.csdn.net/qiufengwuqing123/article/details/53740418
CREATE SEQUENCE “ID_seq” START WITH 5;
ALTER TABLE t_gaia_retail_trade_area_overview ALTER COLUMN “ID” SET DEFAULT nextval(’“ID_seq”’::regclass);

drop sequence "ID_seq";   (删除序列)     https://www.2cto.com/database/201803/727599.html

关于PostgreSql的指定中文排序问题 https://blog.csdn.net/chuan_day/article/details/40977985?utm_source=itdadao&utm_medium=referral

查询两表数据的 相同数据 intersect 不相同数据 except https://www.cnblogs.com/apro-abra/p/4943130.html

把一张表的所有字段查出来
select string_agg(column_name||’’ , ‘,’) from information_schema.columns
where table_schema=‘retail’ and table_name=‘rtl_tradearea’;

根据当前时间查询对应的周几
SELECT extract(DOW FROM cast(‘2019-12-02 11:09’ as TIMESTAMP))

– 获取当前时间戳
select floor(extract(epoch from now()))

update 表名 set 字段名 =replace(字段名,’*’,’’),字段名 =replace(字段名,’#’,’’),字段名 =replace(字段名,’&’,’’)

– 进入容器 docker exec -it 2cb14c477d64 /bin/bash

– 集合转数组

public LineString createLine(List<Coordinate> points){
	Coordinate[] coords  = (Coordinate[]) points.toArray(new Coordinate[points.size()]);
	LineString line = geometryFactory.createLineString(coords);
	return line;
}

– 同步数据

技术贡献: https://segmentfault.com/q/1010000016432209/a-1020000016615965
– 创建物化视图
CREATE MATERIALIZED VIEW v_gaia_brp_emp AS SELECT * FROM t_gaia_brp_emp_copy1;

– 创建触发器函数
CREATE OR REPLACE FUNCTION tri_v_gaia_brp_emp_func() RETURNS TRIGGER AS $$
BEGIN REFRESH MATERIALIZED VIEW CONCURRENTLY v_gaia_brp_emp;
RETURN NULL; END; $ $ LANGUAGE plpgsql;

– 创建唯一索引
CREATE UNIQUE INDEX index_id_test ON v_gaia_brp_emp (id);

– 创建触发器
CREATE TRIGGER tri_v_gaia_brp_emp AFTER INSERT OR UPDATE OR DELETE ON t_gaia_brp_emp_copy1 FOR EACH STATEMENT EXECUTE PROCEDURE tri_v_gaia_brp_emp_func();

docker的登录账号密码:
fffhceu666
fffhce_u@linshiyouxiang.net

stream 流 对集合内的对象排序
list.sort(Comparator.comparing(CustomDataVo::getSalestype))

阿里服务器
root
Aliyun2020

linux 命令启动jar包
nohup java -jar hai-0.0.1-SNAPSHOT.jar >nohup.out & 把日志输出到nohup.out 里 & 后台运行
ps -ef |grep java 查看java 的进程
ps -ef 查看全部 的进程

kill -9 + 进程id 关闭进程

– pgsql 自动填充数据

select generate_series(1,27),‘aaa’; https://www.cnblogs.com/mchina/archive/2013/04/03/2997722.html

– explain select * From test 在查询语句前加上 explain 能看到sql的执行过程

– 使用分区表要设置 constraint_exclusion

查看 show constraint_exclusion
设置 set constraint_exclusion=partition;
constraint_exclusion 的含义是:当PG生产执行计划时是否考虑表上的约束,这个参数有三个选项 “off,on ,partition” ,
默认参数为 off, 意思不使用表上的 constraint 来生成计划,如果设置成 on ,则对所有表生效,生成 PLAN 时会考虑表上的 constraint, 建议设置成 partition,只对分区表生效,从而避免扫描分区表所有分区。

– explain命令查看SQL执行过程的结果分析

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值