PostgreSQL 索引

索引是加速搜索引擎检索数据的一种特殊表查询。简单地说,索引是一个指向表中数据的指针。一个数据库中的索引与一本书的索引目录是非常相似的。

创建索引的语法:

CREATE INDEX index_name ON table_name;

索引类型

单列索引

单列索引是一个只基于表的一个列上创建的索引,基本语法如下:

CREATE INDEX index_name
ON table_name (column_name);

组合索引

组合索引是基于表的多列上创建的索引,基本语法如下:

CREATE INDEX index_name
ON table_name (column1_name, column2_name);

不管是单列索引还是组合索引,该索引必须是在 WHERE 子句的过滤条件中使用非常频繁的列。
如果只有一列被使用到,就选择单列索引,如果有多列就使用组合索引。
强调文本

唯一索引

使用唯一索引不仅是为了性能,同时也为了数据的完整性。唯一索引不允许任何重复的值插入到表中。基本语法如下:

CREATE UNIQUE INDEX index_name
on table_name (column_name);

局部索引

局部索引 是在表的子集上构建的索引;子集由一个条件表达式上定义。索引只包含满足条件的行。基础语法如下:

CREATE INDEX index_name
on table_name (conditional_expression);

隐式索引

隐式索引 是在创建对象时,由数据库服务器自动创建的索引。索引自动创建为主键约束和唯一约束。

删除索引的语法:

DROP INDEX index_name;

pg创建索引以及删除索引的语法相关推荐

  1. mysql索引0affected_mysql 创建索引和删除索引

    索引的创建可以在CREATE TABLE语句中进行,也可以单独用CREATE INDEX或ALTER TABLE来给表增加索引.删除索引可以利用ALTER TABLE或DROP INDEX语句来实现. ...

  2. mysql修改索引语句_mysql——创建索引、修改索引、删除索引的命令语句

    查看表中已经存在 index:show index from table_name; 创建和删除索引索引的创建可以在CREATE TABLE语句中进行,也可以单独用CREATE INDEX或ALTER ...

  3. mysql repair 索引_mysql 创建索引、重建索引、查询索引、删除索引 转自:http://www.phpernote.com/mysql/942.html...

    本篇文章主要是对MySQL索引操作方法做了一下总结,包括创建索引.重建索引.查询索引.删除索引的操作.以下所列示例中中 `table_name` 表示数据表名,`index_name` 表示索引名,c ...

  4. mysql数据库如何创建索引,删除索引

    写在前面:要想了解索引的底层以及优化索引的底层还得学习不同搜索引擎下对于数据的处理,后续我会出一些相关的文章介绍,比如什么是B+tree,什么是聚簇索引什么是二级索引.联合索引等,以及不同搜索引擎下( ...

  5. 数据库创建索引和删除索引的方式总结

    一. 创建索引 1.1 使用Alter创建索引 1.添加主键索引 特点:数据列不允许重复,不能为null,一张表只能有一个主键:Mysql主动将该字段进行排序 ALTER TABLE 表名 ADD P ...

  6. mysql 创建索引、删除索引、查看索引sql语句

    在执行CREATE TABLE语句时可以创建索引,也可以单独用CREATE INDEX或ALTER TABLE来为表增加索引. 1.ALTER TABLE ALTER TABLE用来创建普通索引.UN ...

  7. solrj的使用,环境准备,工程搭建,索引创建,添加\修改索引,删除索引,查询

    1      Solrj的使用 1.1     什么是solrj Solrj是访问solr服务的java程序客户端. 1.2     需求 使用solrj调用solr服务实现对索引库的增删改查操作. ...

  8. oracle创建索引和删除索引

    创建 CREATE INDEX index_Trans_list(索引名) ON Trans_list(表名)  (receivedepid(字段名)) 删除 drop index index_Tra ...

  9. mysql 如何创建索引、修改索引、删除索引、查询索引

    一.创建索引 1.添加PRIMARY KEY(主键索引) ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) 2.添加UNIQUE(唯一索引) ...

最新文章

  1. IIS出现server application error,请问怎么解决?
  2. 如果你要实现IOC,请简单描述一下实现步骤?
  3. cognos 样例 oracle,Cognos10安装和sample配置(ORACLE学样例)
  4. 积分图像(Integral image)
  5. php限制下载文件格式,php下载文件源代码(强制任意文件格式下载)_PHP教程
  6. Error - ORA-26028
  7. String的创建和常量池的关系,intern()相关问题
  8. Linux虚拟文件系统(节点路径搜索)
  9. 【2022】APP-IOS客户端Android客户端安全性测试-常见问题
  10. 对keep-alive的理解,它是如何实现的,具体缓存的是什么?
  11. 完全卸载TeamViewer与重新安装TeamViewer 7(含单文件版V12主控端)
  12. css3中斜杠_使用斜杠语法设置CSS3边界半径
  13. Jini技术常见问题解答
  14. 【个人小程序和企业小程序的区别】
  15. Appium:配置华为手机鸿蒙HarmonyOS系统参数
  16. python import turtle as t_Python Turtle模块的简单应用
  17. facebook-share(分享)
  18. 狼叔:如何正确的学习Node.js
  19. idea同时选中多个相同的内容并编辑和替换
  20. react 自定义日历 手把手教你

热门文章

  1. PC网站接入微信登陆流程二:创建并申请网站应用,获取开发必要的AppID,AppSecret 和 填写 授权回调域
  2. 移动互联网的未来:金钱跟着眼球走
  3. Android点击button弹出ProgressDialog,响应结束后ProgressDialog消失
  4. Android Studio “佛祖保佑 永无bug“ 注释模板设置详解(仅供娱乐)
  5. 大众和微软基情不断升温
  6. 酷冷至尊masterkeys xt v2如何宏编程
  7. 福州一家五口吃鲎中毒老人身亡 摊主被判7年刑
  8. 学习Java,会让你变得越来越自信
  9. 夸克APP端智能:文档关键点检测实践与应用
  10. 亚冠之旅-浦和红钻球场篇