摘要:
一、多表连接查询 1、连接方式概览 [inner] join 内连接:表A和表B以元组为单位做一个笛卡尔积,记为表C,然后在C中挑选出满足符合on 语句后边的限制条件的内容。 left [outer] join 左外连接:在内连接的基础上,将A中有但C中没有的元组也加上。由于C的列数比A的行数多,所 阅读全文
摘要:
# tail /etc/profilePATH="$PATH":/usr/lib/postgresql/9.2/bin/export PATHexport PGDATA=/var/lib/postgresql/9.2/mainexport PGDATABASE=yunexport PGUSER=ch... 阅读全文
摘要:
将spam_keyword表word字段的字符全部拆分,只是利用过程语言完成循环的操作而已。create or replace function proc1() returns setof text as $$declarestr text;strlength int;strreturn text;... 阅读全文
摘要:
CREATE TABLE语法CREATE [[ GLOBAL | LOCAL ]{ TEMPORARY | TEMP }] TABLE table_name ({ column_name data_type [ DEFAULT default_expr ][ column_constraint [.... 阅读全文
摘要:
逻辑备份和psql一样,pg_dump、pg_restore有基本的和数据库连接的参数-h 目标地址(对应环境变量$PGHOST)-p 连接端口(对应环境变量$PGPORT)-U 连接使用的用户(对应环境变量$PGUSER)-d 连接使用的库,但是pg_dump 省略了-d,可以直接跟库名(对应环境... 阅读全文
摘要:
打开查看元命令实际执行的sql的功能和关闭yun=> \set ECHO_HIDDEN onyun=> \set ECHO_HIDDEN offpsql中输入\?查看命令提示资讯性 (选项: S = 显示系统对象, + = 其余的详细信息)\d[S+] 列出表,视图和序列\d[S+] 名称 描述表,... 阅读全文
摘要:
参考:https://wiki.postgresql.org/wiki/9.1%E7%AC%AC%E4%B8%89%E5%8D%81%E4%B9%9D%E7%AB%A0摘记:PL/pgSQL是 PostgreSQL 数据库系统的一个可装载的过程语言。在PL/pgSQL中你可以把一块运算和一系列命令在... 阅读全文
摘要:
系统表显示的都是当前操作数据库下的信息,对象都来自当前数据库。因为不同的系统表都用不同名的字段来记录不同对象的oid,这个表引用那个表,那个表又引用另一个表,所以这些字段名不太好记。 pg_class (系统表:对象)是一个对象表,表的每个字段都是‘rel’开头,分明就是 ‘relation’... 阅读全文
摘要:
增加一个自动记录更新时间的触发器,第一步,先写一个函数,返回触发器类型的create function spam_keyword_update_trigger()returns trigger as $$beginNEW.tm_update := current_timestamp(0);retur... 阅读全文
摘要:
由于不了解postgresql的psql工具,安装完数据库后就直接用pgadmin或navicat来连接操作,在确认初始化后的库中默认有些什么东西后竟然一直无处下手,在还没有了解pg大致体系的情况下搞得一头雾水,先不说数据库角色(role)的那个既可以是用户又可以是组的概念,总是苦于无法查询当前操作 阅读全文