1. 数学函数:
- ABS(x): 返回 x 的绝对值。
SELECT ABS(-5) AS absolute_value;
- ROUND(x [, d]): 将 x 四舍五入为 d 位小数。
SELECT ROUND(123.456, 2) AS rounded_number;
- CEIL(x) 或 CEILING(x): 返回大于或等于 x 的最小整数。
SELECT CEIL(4.75) AS ceiling_value;
- FLOOR(x): 返回小于或等于 x 的最大整数。
SELECT FLOOR(4.75) AS floor_value;
2. 字符串函数:
- CONCAT(string1, string2): 连接两个字符串。
SELECT CONCAT('Hello', ' ', 'World') AS result;
- LENGTH(string): 返回字符串的字符数。
SELECT LENGTH('PostgreSQL') AS string_length;
- UPPER(string): 将字符串转换为大写。
SELECT UPPER('postgresql') AS uppercase_string;
- LOWER(string): 将字符串转换为小写。
SELECT LOWER('PostgreSQL') AS lowercase_string;
3. 日期和时间函数:
- NOW(): 返回当前日期和时间。
SELECT NOW() AS current_datetime;
- DATE_TRUNC(unit, source): 截断日期或时间。
SELECT DATE_TRUNC('hour', '2022-01-01 12:34:56'::TIMESTAMP) AS truncated_datetime;
- EXTRACT(field FROM source): 从日期或时间中提取特定部分。
SELECT EXTRACT(YEAR FROM '2022-01-01'::DATE) AS extracted_year;
4. 聚合函数:
- SUM(x): 返回指定列的总和。
SELECT SUM(salary) AS total_salary FROM employees;
- AVG(x): 返回指定列的平均值。
SELECT AVG(salary) AS average_salary FROM employees;
- COUNT(x): 返回指定列的行数。
SELECT COUNT(*) AS total_rows FROM employees;
- MAX(x): 返回指定列的最大值。
SELECT MAX(salary) AS max_salary FROM employees;
- MIN(x): 返回指定列的最小值。
SELECT MIN(salary) AS min_salary FROM employees;
5. 条件函数:
- CASE WHEN condition THEN result ELSE else_result END: 类似于 switch 语句,根据条件返回不同的结果。
SELECT
CASE
WHEN age > 18 THEN 'Adult'
ELSE 'Minor'
END AS age_group
FROM people;
- COALESCE(x, y, ...): 返回参数列表中的第一个非空值。
SELECT COALESCE(column1, column2, 'N/A') AS result FROM my_table;
这些是一些 PostgreSQL 中常用的函数,涵盖了数学、字符串、日期、时间、聚合和条件等多个领域。根据具体的需求,你可以选择合适的函数来进行操作和计算。
转载请注明出处:http://www.zyzy.cn/article/detail/14156/PostgreSQL