MySQL

PostgreSQL完成按月累加的操作

背景 统计某个指标,指标按照月进行累加,注意需要按省份和年份进行分组。 方法一、使用自关联 — with 按月统计得到中间结果 WITH yms AS (SELECT regionid,SUM(getnum) AS getnum,SUM(dea...

教你巧用mysql位运算解决多选值存储的问题

一.问题场景 工作中经常遇到多选值存储问题,例如:用户有多种认证方式,密码认证、短信认证、扫码认证等,一个用户可能只开启了其中某几种认证方式。 二. 场景分析 比较容易理解的两种实现方式,多字段存储、单个字段拼接存储。 1.多字段存储 每种认证方式用一个字...

PostgreSQL教程(十四):数据库维护

一、恢复磁盘空间:     在PostgreSQL中,使用delete和update语句删除或更新的数据行并没有被实际删除,而只是在旧版本数据行的物理地址上将该行的状态置为已删除或已过期。因此当数据表中的数据变化极为频繁时,那...

Ubuntu PostgreSQL安装和配置的介绍

1、安装 使用如下命令,会自动安装最新版,这里为9.5 sudo apt-get install postgresql 安装完成后,默认会: (1)创建名为”postgres”的Linux用户 (2)创建名为”postg...

PostgreSQL教程(一):数据表详解

一、表的定义:     对于任何一种关系型数据库而言,表都是数据存储的最核心、最基础的对象单元。现在就让我们从这里起步吧。     1. 创建表:      ...

Mysql索引结合explain分析示例

简介 Mysql 在我们项目中使用是非常广的,当我们数据量大的时候,就需要考虑建立索引了,我感觉这也是一种以空间换时间的方式;在我们查询的时候,通过使用索引来提高速度;那么,我们在使用的过程中,怎么判定有没有走索引呢?有一个explain语句来进行分析,根...

PostgreSQL长事务与失效的索引查询浅析介绍

最近刚写了一篇文章介绍了下长事务,以及一些长事务常见的危害,如无法及时的垃圾回收导致表膨胀之类的问题,最近刚好又碰到一个问题也是长事务所导致的。 上周六早上接到同事电话,说某个库CPU一直很高,看了下全是某张大表的全表扫描导致,但是奇怪的是相关的查询都有用...

Postgresql中LIKE和ILIKE操作符的用法详解

LIKE和ILIKE操作符可以模糊匹配字符串,LIKE是一般用法,ILIKE匹配时则不区分字符串的大小写。 它们需要结合通配符使用,下面介绍两种常用的通配符。 %:百分号用于匹配字符串序列,可匹配任意组合; _:下划线用于匹配任何单一字符。 举例来说明LI...

PostgreSQL教程(十五):系统表详解

一、pg_class:     该系统表记录了数据表、索引(仍然需要参阅pg_index)、序列、视图、复合类型和一些特殊关系类型的元数据。注意:不是所有字段对所有对象类型都有意义。   名字 类型 引用 描述 re...

浅谈PostgreSQL中大小写不敏感问题

本文主要讨论PostgreSQL中大小写不敏感存在的问题。 默认情况下,PostgreSQL会将列名和表名全部转换为小写状态。 图1 Person与person 如图1所示,我们创建表person,其中包含name列。然后插入一条记录。执行SELECT查询...