首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

PostgreSQL 基础与实践

,要么都失败,不存在完成了一部分这样情况,例如银行转账这样场景里,转账行为发生,发送方余额减少,而如果数据库出现了操作错误,接收方余额增加,则会造成严重问题。...可以使用如下命令查看 psql 命令列表: psql --help 连接 PostgreSQL 我们可以通过以下命令连接数据库: # 连接数据库 psql -h -p -U... 当然,我们也可以通过一些第三方工具来更方便地连接数据库使用,我当前使用 TablePlus 就支持 PostgreSQL 数据库,推荐。...联表查询是指在查询时,将多个表数据进行连接,以便查询出更多信息。...') FROM person; NULLIF 使用 NULLIF 关键字,当第二个参数与第一个相同时返回 NULL,否则返回第一个参数,用于防止一些被除数为 0 报错等。

1.2K20

进阶数据库系列(二十四):PostgreSQL 数据库日志与日常巡检

PostgreSQL 服务器日志 开启审计日志 编辑 $PGDATA/postgresql.conf文件 vi $PGDATA/postgresql.conf # 做以下修改,下面2部分提及全部备注掉...返回 Mon %A #星期英文单词全拼:如星期一,返回 Monday %b #月份英文单词缩写:如一月, 返回 Jan %B #月份引文单词缩写:如一月, 返回 January...:03/08/15 %X #时间字符串表示 :23:22:08 %y #两个数字表示年份 15 %Y #四个数字表示年份 2015 %z #与utc时间间隔 (如果是本地时间,返回空字符串...) %Z #时区名称(如果是本地时间,返回空字符串) 消息严重级别 Postgresql 数据库巡检 主机信息 CPU mpstat | sed -n '3,$p' | awk -F' ' '{print...md5认证; 异常处理:编辑pg_hba.conf文件,修改参数重新加载数据库; vi $PGDATA/postgresql.conf pg_ctl reload 检查数据库重要配置 select

90031

PostgreSQLNULL意义

PostgreSQLNULL意义 PG,NULL可以表示空numeric值;不能进行数学操作符计算,NULL参与结果都是NULL。 1、NULL是什么 首先需要理解NULL值是什么。...有一些特殊语句可以针对 NULL 测试该值,但除此之外,没有任何语句可以用于测试 NULL 值。 让我们做一些有趣比较,这将清楚 PostgreSQL NULL 概念。...如果 NULL 是一个正常值,那么结果应该是“t”。但是 NULL 不是一个正常值,因此,没有结果。...PGCOALESCE函数返回参数第一个非NULL值,要求参数至少有一个是非NULL如果参数都为NULL报错: COALESCE (NULL, 2 , 1); 3)NULLIF 另外一个函数是...NULLIF,如果两个参数相等,返回NULL,否则返回第一个参数: postgres=# SELECT NULLIF (10, 10); nullif -------- (1 row) postgres

2.1K20

使用kettle来根据时间戳或者批次号来批量导入数据,达到增量效果。

高级tab,设置日志tab,位置参数tab, 命名参数tab,如果自己需要的话可以自己使用和研究。 3、作业项名称,自己填自己数据库连接,自己新建和编辑即可。...2)、步骤名称,自己起自己名字。 数据库连接,自己新建和编辑。 目标模式,如果是Greenplum或者postgresql要输入自己模式。...COALESCE()函数第一个参数expression为待检测表达式,而其后参数个数不定。 COALESCE()函数将会返回包括expression在内所有参数第一个非空表达式。...如果 expression不为空值返回expression;否则判断value1是否是空值,如果value1不为空值返 回value1;否则判断value2是否是空值,如果value2不为空值返回...value3;……以此类推, 如果所有的表达式都为空值,返回NULL。

3.1K10

PostgreSQL 教程

LIMIT 获取查询生成子集。 FETCH 限制查询返回行数。 IN 选择与值列表任何值匹配数据。 BETWEEN 选择值范围内数据。 LIKE 基于模式匹配过滤数据。...集合运算 主题 描述 UNION 将多个查询结果集合并为一个结果集。 INTERSECT 组合两个或多个查询结果集并返回一个结果集,该结果行都出现在两个结果集中。...连接删除 根据另一个表值删除表行。 UPSERT 如果新行已存在于表插入或更新数据。 第 10 节....条件表达式和运算符 主题 描述 CASE 向您展示如何使用CASE表达式构成条件查询COALESCE 返回第一个非空参数。您可以使用它将NULL替换为一个默认值。...NULLIF 如果第一个参数等于第二个参数返回NULL。 CAST 从一种数据类型转换为另一种数据类型,例如,从字符串转换为整数,从字符串转换为日期。 第 16 节.

47010

在Oracle数据库使用COALESCE优雅地处理NULL

数据库操作,NULL值处理是一个常见而又重要任务。NULL在数据库中代表缺失或未知数据,因此在查询、计算和逻辑判断时,它可能会带来一些意想不到结果。...Oracle数据库提供了多种方法来处理NULL值,其中COALESCE函数是一个强大且优雅工具。COALESCE函数用于返回其参数列表第一个非NULL值。...它语法非常简单,可以接受两个或多个参数,并返回第一个非NULL参数值。如果所有参数都是NULL,COALESCE函数将返回NULL。...SELECT name, COALESCE(salary, 0) AS adjusted_salary FROM employees;在上面的查询COALESCE(salary, 0)将返回salary...字段值,如果它是NULL,返回0作为默认值。

22710

数据库04】中级开发需要掌握哪些SQL进阶玩法

如果视图是物化其计算结果会被存储在计算机,从而在使用视图时可以更快运行。...结果显示另一个问题就是处理空值,在本书中,我们使用null来使阅读更清晰,但是大多数系统缺省设置只是将字段留空。可以使用coalesce函数来选择在查询结果输出空值方式。...例如,如果我们希望显示教师ID和工资,但是将空工资显示为0,我们会写: select ID,coalesce(salary, 0) as salary from instructor coalesce...如果索引创建成功,后面违反候选码声明任何元组插入企图将会失败。请注意,如果数据库系统支持标准唯一性声明,这里唯一性特性就是多余。 删除索引。...Oracle虚拟私有数据库(Virtual Private Database,VPD)功能支持如下所示行级授权,允许系统管理员将函数与关系相关联,该函数返回一个谓词,该谓词会自动被添加到使用该关系任何查询

1.6K20

Citus 分布式 PostgreSQL 集群 - SQL Reference(查询处理)

coordinator 将查询划分为更小查询片段,其中每个查询片段可以在分片上独立运行。然后协调器将查询片段分配给 worker,监督他们执行,合并他们结果,并将最终结果返回给用户。...然后它从每个片段查询获取结果,合并它们,并将最终结果返回给用户。...Citus 在第二个子树启动另一个执行器作业。它将在 page_views 中计算不同主机。它使用 JOIN 连接中间结果。中间结果将帮助它限制在前二十页。...这个例子展示了 Citus 如何使用分布式子计划在多个步骤执行查询,以及如何使用 EXPLAIN 来了解分布式查询执行。...该 worker 上 PostgreSQL 计划程序选择在相应分片表上本地执行该查询最佳计划。 PostgreSQL 执行器然后运行该查询并将查询结果返回给分布式执行器。

1.2K20

《SQL Cookbook》 - 第三章 多表查询

(2) 如果查询结果返回给外层查询,那么EXISTS结果是TRUE,NOT EXISTS就是FALSE,如此一来,外层查询就会舍弃当前行。...(3) 如果查询没有返回任何结果,那么NOT EXISTS结果是TRUE,由此外层查询就会返回当前行(因为他是一个不存在于t02记录)。...*)   from dept; 因为UNION子句会过滤重复项,如果两个表行数相同,只会返回一行数据,如果返回两行,说明这两个表没有完全相同数据。...多个表返回缺少使用全外连接,基于一个共同值从两个表返回缺少值,全外连接查询就是合并两个表连接查询结果集。...(1) nvl(expr, 0) 如果第一个参数为null,返回第二个参数。 如果第一个参数为非null,返回第一个参数。

2.3K50

《SQL Cookbook》 - 第一章 检索数据

列名被称作别名,他会让检索结果更易于理解,对于一些数据库,可以省略AS关键字,但所有的数据库都支持这个关键字。 3....MySQL可以用concat连接多列值, select concat(cname, ' WORKS AS A ', job) from emp; DB2、Oracle和PG使用竖线进行连接, select...ename || ' WORKS AS A '|| job from emp; SQL Server使用"+"进行连接, select ename + ' WORKS AS A ' + job from...NULL值不会等于或者不等于任何值,而且不能和其自身做比较,不能使用=或者!=,需要使用IS NULL或IS NOT NULL。...可以使用COALESCE将NULL值改为实际值,该函数会返回参数列表第一个非NULL值,如果c不为0返回c,否则返回0, select coalesce(c, 0) from emp; 此处能使用CASE

84020

关于PostgreSQL数据增删改查日常总结(主要jsonb类型)

在工作,对PostgreSQL数据库操作,最难也就是对jsonb类型数据进行增删改查了,其他字段跟MySQL数据库没什么区别,现在我就分享一下平时工作总结相关操作,这是我承包公司一年sql脚本开发遇到并总结...,公司使用这种数据库可以收藏,提高你开发速度。...将两个jsonb类型字段求和查询出来,值为空时赋值默认值0 coalesce(ext->>'ward_potential','0')::NUMERIC+coalesce(ext->>'ward_potential...','0')::NUMERIC (5)查询出当月五号 select DATE(to_char(now(),'yyyy-MM-05')) (6)身份证在excel显示四位为0,前面加引号,防止显示错误...b 四、where条件组装 (1)将array类型jsonb数据转化为in条件进行筛选,查询结果用逗号分隔。

1.9K10

【Mysql】mysql命令常用语句

一个学生出现了多少次 连接两个以上 SELECT 语句结果组合到一个结果集合。多个 SELECT 语句会删除重复数据。...all where 排序ORDER BY SELECT 语句使用 ORDER BY 子句将查询数据排序返回数据: ASC 或 DESC 关键字来设置查询结果是按升序或降序排列。...我们可以使用 coalesce 来设置一个可以取代 NUll 名称,coalesce 语法: select coalesce(a,b,c); 参数说明:如果a==null,选择b;如果b==null...在 MySQL ,NULL 值与任何其它值比较(即使是 NULL)永远返回 NULL,即 NULL = NULL 返回 NULL 。 以下实例你可以看到 = 和 !...如果所有的表达式都是空值,最终将返回一个空值。使用coalesce在于大部分包含空值表达式最终将返回空值。

64340

MysqlNULLIF

——冯梦龙 NULLIF函数是MySQL一个条件函数,用来返回两个表达式比较结果。具体来说,如果两个表达式相等,NULLIF函数返回NULL;如果不相等,它就返回第一个表达式值。...例如,我们要计算两个列A和B比值,可以这样写: SELECT A, B, A / NULLIF(B, 0) AS result FROM your_table; 这里,如果B为0NULLIF(B,...每个值,如果值是空字符串(“”),该函数返回NULL;如果不是空字符串,就返回原值。...users; 这个例子如果email是空字符串,首先被NULLIF转换为NULL,然后COALESCE函数会将其替换为默认邮箱地址no-email@example.com,这样无论email是'...假设一个电商数据库中有一个订单表,表中有coupon_discount字段,记录了使用优惠券折扣金额,使用优惠券记录这一字段为0

9110

Python之psycopg2操作PostgreSQL

提供了常用数据库操作: commit():提交任何提交事务(transaction)到数据库。...close():关闭数据库如果关闭数据库时仍有提交事务,执行回滚操作。...如果成功打开数据库时,它返回一个连接对象。 2 connection.cursor()   该程序创建一个光标将用于整个数据库使用Python编程。...11 cursor.fetchmany([size=cursor.arraysize])   这个例程取出下一个组查询结果行数,返回一个列表。当没有找到记录,返回空列表。...该方法试图获取尽可能多行所显示大小参数。 12 cursor.fetchall()   这个例程获取所有查询结果(剩余)行,返回一个列表。空行时返回空列表。

5.7K30

PostgreSQL全文检索简介 转

感谢PostgreSQL中文社区翻译文档 PostgreSQL全文检索入门 PG全文检索操作符是@@,当一个tsvector(文档)和tsquery(条件)匹配时返回true,并且前后顺序无影响...---------- f PostgreSQL 10开始,jsonb也支持全文检索了。 和普通SQL查询一样,只要在WHERE条件中使用这个符号就代表使用全文检索条件筛选文档了。...因为如果使用隐式转换或::tsvector这种默认参数转换,将使用default_text_search_config配置分词,该配置默认是pg_catalog.simple,可能对于绝大多数查询场景并不适用...i | idiom,成语 j | abbreviation,简称 k | tail,连接成分 l | tmp,习用语...此外,还有一些诸如短词复合: zhparser.multi_short = f这一类控制分词结果选项,根据实际使用酌情开启。

5.1K30

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券