PostgreSQL 運算式
運算式是由一個或多個的值、運算符、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 表(下載 COMPANY SQL 檔 ),數據內容如下:
zaixiandb# 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)來查詢數據:
zaixiandb=# 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 是一個數學運算運算式,實例如下:
zaixiandb=# SELECT (17 + 6) AS ADDITION ; addition ---------- 23 (1 row)
此外 PostgreSQL 還內置了一些數學函數,如:
- avg() : 返回一個運算式的平均值
- sum() : 返回指定字段的總和
- count() : 返回查詢的記錄總數
以下實例查詢 COMPANY 表的記錄總數:
zaixiandb=# SELECT COUNT(*) AS "RECORDS" FROM COMPANY; RECORDS --------- 7 (1 row)
日期運算式
日期運算式返回當前系統的日期和時間,可用於各種數據操作,以下實例查詢當前時間:
zaixiandb=# SELECT CURRENT_TIMESTAMP; current_timestamp ------------------------------- 2019-06-13 10:49:06.419243+08 (1 row)