**
声明:
- 本文资料多整理自权威书籍,并且
- 所有SQL均在pgAdmin 4.1.6 + PostgreSQL 9.6.5 测试下运行通过!
- 请放心使用。
- (测试中表名存在模式限制,文中均已略去)
**
employee表:
eid [PK] | ename | eage | esalary | esex | eemail |
---|---|---|---|---|---|
integer | character varying(20) | integer | integer | character varying(1) | character varying(32) |
PostgreSQL数据查询–详细速查手册
一、基本查询语句
1.1 SELECT语句的基本格式:
SELECT
{* | <字段列表>}
[
{FROM <表1>,<表2>..}
[WHERE <表达式>]
[GROUP BY <字段名>]
[HAVING <表达式> [{
<操作符1> <表达式1>}][..]]
[ORDER BY <字段名> ASC | DESC ]
[LIMIT <行数> [ OFFSET <偏移量> ]]
]
约定:
- {} 内必选
- [] 内可选
- <> 内参数: 表达式、字段、参数
- | 或者
二、单表查询
2.01 查询所有字段
语法:
select * from 表名;
例:
select * from mytable;
2.02 查询指定字段
语法:
select 字段名 from 表名;
例:
select id,name,age from employee;
2.03 查询指定记录
语法:
select *|字段名 from 表名 where 字段=值;
where支持的条件判断符:
操作符 | 说明 |
---|---|
= | 等于 |
<> , != | 不等于 |
< | 小于 |
<= | 小于等于 |
> | 大于 |
>= | 大于等于 |
between A and B | 在A与B之间 |
例1:
select * from employee where age>=18;
例2:
select age,name from employee where salary between 2000 and 3000;
2.04 范围查询--IN 的用法
语法:
select *|字段名 from 表名 where 字段 in (列表);
例1: 本命年员工
select id,name from employee where age in (24,36,48,60);
例2: 某列表中员工 (char varing[]类型不支持)