部分 II. SQL 语言

这部份描述在PostgreSQL中SQL语言的使用。我们从描述SQL的一般语法开始,然后解释如何创建保存数据的结构、如何填充数据库以及如何查询它。中间的部分列出了在SQL命令中可用的数据类型和函数。剩余的部分则留给对于调优数据性能的重要方面。

这部份的信息被组织成让一个新用户可以从头到尾跟随它来全面理解主题,而不需要多次参考后面的内容。这些章都是自包含的,这样高级用户可以根据他们的选择阅读单独的章。这一部分的信息被以一种叙事的风格展现。需要查看一个特定命令的完整描述的读者应该去看看第 VI 部分

这一部分的阅读者应该知道如何连接到一个PostgreSQL数据库并且发出SQL命令。我们鼓励不熟悉这些问题的读者先去阅读第 I 部分。SQL通常使用PostgreSQL的交互式终端psql输入,但是其他具有相似功能的程序也可以被使用。

目录

4. SQL语法

4.1. 词法结构

4.2. 值表达式

4.3. 调用函数

5. 数据定义

5.1. 表基础

5.2. 默认值

5.3. 生成列

5.4. 约束

5.5. 系统列

5.6. 修改表

5.7. 权限

5.8. 行安全性策略

5.9. 模式

5.10. 继承

5.11. 表分区

5.12. 外部数据

5.13. 其他数据库对象

5.14. 依赖跟踪

6. 数据操纵

6.1. 插入数据

6.2. 更新数据

6.3. 删除数据

6.4. 从修改的行中返回数据

7. 查询

7.1. 概述

7.2. 表表达式

7.3. 选择列表

7.4. 组合查询

7.5. 行排序

7.6. LIMIT和OFFSET

7.7. VALUES列表

7.8. WITH查询(公共表表达式)

8. 数据类型

8.1. 数字类型

8.2. 货币类型

8.3. 字符类型

8.4. 二进制数据类型

8.5. 日期/时间类型

8.6. 布尔类型

8.7. 枚举类型

8.8. 几何类型

8.9. 网络地址类型

8.10. 位串类型

8.11. 文本搜索类型

8.12. UUID类型

8.13. XML类型

8.14. JSON 类型

8.15. 数组

8.16. 组合类型

8.17. 范围类型

8.18. 域类型

8.19. 对象标识符类型

8.20. pg_lsn 类型

8.21. 伪类型

9. 函数和操作符

9.1. 逻辑操作符

9.2. 比较函数和操作符

9.3. 数学函数和操作符

9.4. 字符串函数和操作符

9.5. 二进制串函数和操作符

9.6. 位串函数和操作符

9.7. 模式匹配

9.8. 数据类型格式化函数

9.9. 时间/日期函数和操作符

9.10. 枚举支持函数

9.11. 几何函数和操作符

9.12. 网络地址函数和操作符

9.13. 文本搜索函数和操作符

9.14. XML 函数

9.15. JSON 函数和操作符

9.16. 序列操作函数

9.17. 条件表达式

9.18. 数组函数和操作符

9.19. 范围函数和操作符

9.20. 聚集函数

9.21. 窗口函数

9.22. 子查询表达式

9.23. 行和数组比较

9.24. 集合返回函数

9.25. 系统信息函数和运算符

9.26. 系统管理函数

9.27. 触发器函数

9.28. 事件触发器函数

9.29. 统计信息函数

10. 类型转换

10.1. 概述

10.2. 操作符

10.3. 函数

10.4. 值存储

10.5. UNION、CASE和相关结构

10.6. SELECT的输出列

11. 索引

11.1. 简介

11.2. 索引类型

11.3. 多列索引

11.4. 索引和ORDER BY

11.5. 组合多个索引

11.6. 唯一索引

11.7. 表达式索引

11.8. 部分索引

11.9. 只用索引的扫描和覆盖索引

11.10. 操作符类和操作符族

11.11. 索引和排序规则

11.12. 检查索引使用

12. 全文搜索

12.1. 介绍

12.2. 表和索引

12.3. 控制文本搜索

12.4. 额外特性

12.5. 解析器

12.6. 词典

12.7. 配置例子

12.8. 测试和调试文本搜索

12.9. GIN 和 GiST 索引类型

12.10. psql支持

12.11. 限制

13. 并发控制

13.1. 介绍

13.2. 事务隔离

13.3. 显式锁定

13.4. 应用级别的数据完整性检查

13.5. 提醒

13.6. 锁定和索引

14. 性能提示

14.1. 使用EXPLAIN

14.2. 规划器使用的统计信息

14.3. 用显式JOIN子句控制规划器

14.4. 填充一个数据库

14.5. 非持久设置

15. 并行查询

15.1. 并行查询如何工作

15.2. 何时会用到并行查询?

15.3. 并行计划

15.4. 并行安全性

PostgreSQL 12 文档: 部分 II. SQL 语言的更多相关文章

  1. 拆分ABBYY FineReader 12文档的方法

    处理大量多页文档时,通常都会首先扫描所有文档,然后才进行分析和识别.但是,要正确保留每个纸质文档的原始格式,ABBYY FineReader 12必须将每个文档作为单独 FineReader 文档进行 ...

  2. developers.google.com上的开发者文档如何切换显示语言

    一个小的tip,搜索到developers.google.com上的开发者文档,有些被翻译了的会自动显示中本版,如果想看英文版,可以在当前url后面加?hl=en,就会变成英文版.估计是根据地区直接推 ...

  3. 2016 - 3 - 12 SQLite的学习之SQL语言入门

    1.SQL语句的特点: 1.1 不区分大小写 1.2 每条语句以;结尾 2.SQL语句中常用关键字: select,insert,update,from,create,where,desc,order ...

  4. Database Initialization Parameters for Oracle E-Business Suite Release 12 (文档 ID 396009.1)

    In This Document Section 1: Common Database Initialization Parameters For All Releases Section 2: Re ...

  5. postgresql学习文档

    字符串函数: http://www.php100.com/manual/PostgreSQL8/functions-string.html http://gavin-chen.iteye.com/bl ...

  6. Deploying JRE (Native Plug-in) for Windows Clients in Oracle E-Business Suite Release 12 (文档 ID 393931.1)

    In This Document Section 1: Overview Section 2: Pre-Upgrade Steps Section 3: Upgrade and Configurati ...

  7. postgresql使用文档之一 初始化数据存储区

    17.2. 创建一个数据库集群(Database Cluster) 在你能做任何事情之前,你必须在磁盘上初始化一块存储空间.我们称这为一个数据库集群(database cluster). 一个Data ...

  8. Java服务器端生成报告文档:使用SQL Server Report Service(SSRS)

    SQL Server Report Service(SSRS)提供了Asp.Net和WinForm两类客户端组件封装,因此使用C#实现SSRS报表的导出功能,仅需要使用相应的组件即可. Java操作S ...

  9. postgresql 安装文档

    tar xf postgresql-9.4.5.tar.gz cd postgresql-9.4.5 yum grouplist yum grouplist|grep Deve yum groupin ...

  10. 菜鸟级SQL Server21天自学通(文档+视频)

    SQL语言的主要功能就是同各种数据库建立联系,进行沟通.按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言.SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据 ...

随机推荐

  1. iOS16新特性 | 灵动岛适配开发与到家业务场景结合的探索实践

    作者:京东零售 姜海 灵动岛是苹果在iPhone 14 Pro和iPhone 14 Pro Max上首次提出的全新UI交互形式,创新性的让虚拟软件和硬件的交互变得更为流畅.当有来电.短信等通知时,灵动 ...

  2. Zabbix - 部署随笔

    部署Zabbix服务端 准备机器,初始化环境 #查看IP地址 [root@Minimal ~]# ifconfig ens33 | awk 'NR==2{print $2}' 10.0.0.243 # ...

  3. 从原理聊JVM(一):染色标记和垃圾回收算法

    作者:京东科技 康志兴 1 JVM运行时内存划分 1.1 运行时数据区域 • 方法区 属于共享内存区域,存储已被虚拟机加载的类信息.常量.静态变量.即时编译器编译后的代码等数据.运行时常量池,属于方法 ...

  4. 浏览器发送POST请求、DELETE请求

    1.浏览器发送POST请求 方法一: var xml = new XMLHttpRequest(); var url = "http://127.0.0.1:8800/admin/user& ...

  5. Java实现平衡二叉搜索树(AVL树)

    上一篇实现了二叉搜索树,本章对二叉搜索树进行改造使之成为平衡二叉搜索树(Balanced Binary Search Tree). 不平衡的二叉搜索树在极端情况下很容易退变成链表,与新增/删除/查找时 ...

  6. Azure DevOps(三)Azure Pipeline 自动化将程序包上传到 Azure Bolb Storage

    一,引言 结合前几篇文章,我们了解到 Azure Pipeline 完美的解决了持续集成,自动编译.同时也兼顾了 Sonarqube 作为代码扫描工具.接下来另外一个问题出现了,Azure DevOp ...

  7. 【CSS】使元素在父元素中居中显示的几种方法

    在页面元素布局时经常会有把元素居中的需求,大多都是用弹性盒或者定位,下面来说一下使用方法 一.使用边距进行固定位置 这种方法需要把父元素和子元素的宽度固定,然后利用二者宽高之差添加边距移动元素的位置 ...

  8. pytest数据参数化和数据驱动yaml的简单使用

    Pytest参数化 @pytest.mark.parametrize(argnames, argvalues) argnames: 要参数化的变量, string(逗号分隔), list, tuple ...

  9. js数组和字符串方法

    一.数组方法 1.1.可以改变原数组 var arr = [10, 20, 30, 40, 50, 55]; // 1. **** push() --- 在数组的最后添加一项内容 // var ret ...

  10. 2022-01-02:给定两个数组A和B,长度都是N, A[i]不可以在A中和其他数交换,只可以选择和B[i]交换(0<=i<n), 你的目的是让A有序,返回你能不能做到。

    2022-01-02:给定两个数组A和B,长度都是N, A[i]不可以在A中和其他数交换,只可以选择和B[i]交换(0<=i<n), 你的目的是让A有序,返回你能不能做到. 答案2022- ...