扫码一下
查看教程更方便
表达式是由一个或多个的值、运算符、postgressql 函数组成的。
postgresql 表达式类似一个公式,我们可以将其应用在查询语句中,用来查找数据库中指定条件的结果集。
select 语句的语法格式如下:
select column1, column2, columnn
from table_name
where [condition | expression];
postgresql 的表达式可以有不同类型,马上我们就来介绍。
布尔表达式是根据一个指定条件来读取数据:
select column1, column2, columnn
from table_name
where single value matchting expression;
创建 company 表( ),数据内容如下:
jiyik_db=# select * from company;
结果如下:
id | name | age | address | salary
---- ------- ----- ----------- --------
1 | paul | 32 | california| 20000
2 | allen | 25 | texas | 15000
3 | teddy | 23 | norway | 20000
4 | mark | 25 | rich-mond | 65000
5 | david | 27 | texas | 85000
6 | kim | 22 | south-hall| 45000
7 | james | 24 | houston | 10000
(7 rows)
以下使用了布尔表达式(salary=10000)来查询数据:
jiyik_db=# select * from company where salary = 10000;
结果如下:
id | name | age | address | salary
---- ------- ----- ---------- --------
7 | james | 24 | houston | 10000
(1 row)
数字表达式常用于查询语句中的数学运算:
select numerical_expression as operation_name
[from table_name where condition] ;
numerical_expression 是一个数学运算表达式,实例如下:
jiyik_db=# select (17 6) as addition ;
结果如下
addition
----------
23
(1 row)
此外 postgresql 还内置了一些数学函数,如:
以下示例查询 company 表的记录总数:
jiyik_db=# select count(*) as "records" from company;
结果如下:
records
---------
7
(1 row)
日期表达式返回当前系统的日期和时间,可用于各种数据操作,以下实例查询当前时间:
jiyik_db=# select current_timestamp;
结果如下:
current_timestamp
-------------------------------
2019-06-13 10:49:06.419243 08
(1 row)