客户端

数据库:

  • 创建:createdb mydb;
  • 删除: dropdb mydb;

连接:

  • 连接: psql mydb;
  • 断开连接: \q
  • 查看当前版本: select version();
  • 直接查看当前数据库情况: psql -l;
  • 在当前客户端下:
    • 跳转链接到其他数据库: \c mydb;
    • 创建新数据库: create database mydb;

表:

  • 所有表:\d;
  • 具体表: \d mytable //注意没有分号
  • 创建表:
create table mytable (
col_name1 data_type1 [primary key], //指定主键
col_name2 data_type2
);
  • 删除表: drop table mytable;
  • 创建删除前加存在判断: 例子

创建数据

  • 插入数据: insert into mytable (col1, col2, ..) values (val1, val1, ...); //不指定字段的话,添加值按默认字段顺序储存;
  • 插入多条数据: insert into mytable values (....), (....);
  • 插入数据并返回结果: inser into mytable values(...) retruning col1,col2....|* ;
  • 更新: update mytable set col1 = val1, col2 = val2 where col3 = val3; //注意where衔接的不是逗号是and/or;

删除数据

  • delete from mytable where col1 = val1, col2 = val2;
  • 删除全部表数据
delete from mytable;  //相当于一条一条删除;
truncate table mytable; //相当于一次性删除,比较快;

查找:

  • 查找所有: select */col1,col2.. from mytable where col1 = val1;
  • 查找排序显示:select * from mytable order by col1,col2.. //注意order by要放在where后面;
    • order by默认是ASC从小到大; 使用order by col1 DESC进行倒序排列;
  • 查找计算值: select max|min|sum|avg(attr) from users;

分组查询

  • 使用聚合函数(count/sum..), group by,按某个字段查找
select age, count(*) from student group by age;

多表关联查询

create table class(no int primaty key, class_name varchar(40) );
create table student(no int primary key, student_name varchar(40), age int, class_no int) ); //关联查询/表join select student_name, class_name from student, class where student.class_no = class.no; //简化
select student_name, class_name from student a, class b where a.class_no = b.no and a.age > 14;

拷贝数据

  • 使用insert into ... select: insert into tab1 select * from tab2 //注意tab2中要拷贝的字段tab1中都必须要有;

查询数据合并显示

select * from tab1 where col1 = val1 union select * from tab2 where col1 = val2;    //两个表必须要有相同的字段
  • union默认会把过滤相同的查询结果;不过滤显示使用union all;

psql-02基本语法的更多相关文章

  1. JavaScript学习02 基础语法

    JavaScript学习02 基础语法 JavaScript中很多基础内容和Java中大体上基本一样,所以不需要再单独重复讲了,包括: 各种算术运算符.比较运算符.逻辑运算符: if else语句.s ...

  2. Clojure学习02:语法

    相比我们传统的 c ,java ,python ,javascript等,Clojure的语法比较特别,初一看,还可能会有些不适应. 本文来介绍下Clojure的语法特点. 一.表达式 所有的Cloj ...

  3. Webpack + React 开发 02 JSX 语法

    HTML 语言直接写在 JavaScript 语言之中,不加任何引号,这就是 JSX 的语法,它允许 HTML 与 JavaScript 的混写: render(<h1>Hello Wor ...

  4. Python入门 —— 02基础语法

    基础语法入门学习推荐: 简明 Python 教程 下文仅为入门推荐书籍的补充与重点 多行语句:末尾使用斜杠 (  ) ,将一行分为多行 var = item1 + item2 + item3 注释: ...

  5. Java单体应用 - Markdown - 02.基础语法

    原文地址:http://www.work100.net/training/monolithic-markdown-basic.html 更多教程:光束云 - 免费课程 基础语法 序号 文内章节 视频 ...

  6. Go的100天之旅-02基本语法

    基本语法 Go关键字 下面是Go的25个关键字: break default func interface select case defer go map struct chan else goto ...

  7. JavaScript笔记02——基本语法(包括函数、对象、数组等)

    Doing Math & Logic Conditional & Looping Functions Objects Arrays Doing Math & Logic 1.J ...

  8. psql命令行快速参考

    psql的命令语法是: psql [options] [dbname [username]] psql命令行选项以及它们的意思在表1-1中列出.使用以下命令可以看到psql完整的选项列表: $ psq ...

  9. 黑马eesy_15 Vue:常用语法

    自学Java后端开发,发现14 微服务电商[乐优商城]实战项目,在介绍完SpringCloud后就要肝前端的基础知识ES6语法和Vue.js 所以本篇博客作为入门Vue练习记录的过程,目的是供自学后端 ...

  10. pspo

    一.项目计划总结: 周活动总结表 姓名:               日期:3.12.2015 日期       任务 听课 编写程序 阅读课本 准备考试 日总计 周日 周一 周二 周三 10:00- ...

随机推荐

  1. windows下Emacs的安装与配置

    1.下载 到这个网址可以下载到Emacs的windows版本:http://ftp.gnu.org/pub/gnu/emacs/windows/ 只需要一个压缩文档,如emacs-23.2-bin-i ...

  2. App主界面Tab实现方法

    ViewPager + FragmentPagerAdapter 这里模仿下微信APP界面的实现 国际惯例,先看下效果图:   activity_main.xml 布局文件: <?xml ver ...

  3. IOS-Gesture(手势识别)

    手势识别——Gesture Recognizer •iOS3.2版本之后,苹果推出了手势识别(Gesture Recognizer),其目的是: –简化开发者的开发难度 –统一用户体验 • •iOS目 ...

  4. UI课堂笔记

    2016.7.18 + (UIColor *)blackColor; + (UIColor *)darkGrayColor;   深灰色 + (UIColor *)lightGrayColor;  浅 ...

  5. Mysql子查询

    1单值(Scalar operand) 只有当外层(Parent)不为空时,才返回相应值:否则返回NULL. note:For the subquery just shown, if t1 were ...

  6. c语言if语句

    #include<stdio.h>#include<windows.h>#include <limits.h>#include <math.h>int ...

  7. Java使用JDBC连接MySQL数据库

    1.引用 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写 ...

  8. Swift - as、as!、as?三种类型转换操作使用一览

    as.as!.as? 这三种类型转换操作符的异同,以及各自的使用场景.   1,as使用场合 (1)从派生类转换为基类,向上转型(upcasts) 1 2 3 4 class Animal {} cl ...

  9. NYOJ之XX和OO

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAskAAAI0CAIAAABgWyN9AAAgAElEQVR4nO3dPW7jyt4n4NmEcy/EaW

  10. hud 1019最小公倍数

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1019 思路:头两个数先求,再用所求的数与后面的一个数求,依次类推 #include<stdlib ...