PostgreSQL 常用函数


PostgreSQL 常用函数

PostgreSQL是一个强大的开源关系型数据库系统,在实际开发中我们使用的时候需要掌握其中常用的函数。本文将介绍一些PostgreSQL中常用的函数。

字符串函数

1. 字符串连接函数

  • 操作符: ||

  • 语法: string1 || string2

  • 实例:

    SELECT 'Hello' || 'World';  -- HelloWorld
    

2. 字符串截取函数

  • 函数: substring

  • 语法: substring(string from start [for length])

  • 实例:

    SELECT substring('abcdefg' from 3 for 2);  -- bc
    

3. 字符串替换函数

  • 函数: replace

  • 语法: replace(string, from_string, to_string)

  • 实例:

    SELECT replace('Hello World', 'Hello', 'Hi');  -- Hi World
    

4. 字符串长度函数

  • 函数: length

  • 语法: length(string)

  • 实例:

    SELECT length('Hello');  -- 5
    

5. 字符串大小写转换函数

  • 函数: upper, lower

  • 语法:

    • UPPER(string):将字符串转换为大写。
    • LOWER(string):将字符串转换为小写。
  • 实例:

    SELECT UPPER('Hello'), LOWER('World');  -- HELLO, world
    

数学函数

1. 求绝对值函数

  • 函数: abs

  • 语法: abs(number)

  • 实例:

    SELECT abs(-10);  -- 10
    

2. 取整函数

  • 函数: floor, ceiling, round

  • 语法:

    • FLOOR(number):向下取整。
    • CEILING(number):向上取整。
    • ROUND(number, precision):四舍五入。
  • 实例:

    SELECT FLOOR(3.5), CEILING(3.5), ROUND(3.5);  -- 3, 4, 4
    

3. 幂函数

  • 函数: pow

  • 语法: pow(number, power)

  • 实例:

    SELECT pow(2, 3);  -- 8
    

4. 开方函数

  • 函数: sqrt

  • 语法: sqrt(number)

  • 实例:

    SELECT sqrt(16);  -- 4
    

日期和时间函数

1. 获取当前日期和时间函数

  • 函数: now, current_date, current_time

  • 语法:

    • NOW():返回当前日期和时间。
    • CURRENT_DATE:返回当前日期。
    • CURRENT_TIME:返回当前时间。
  • 实例:

    SELECT NOW(), CURRENT_DATE, CURRENT_TIME;  -- 2021-10-08 16:00:00.000000, 2021-10-08, 16:00:00.000000
    

2. 日期和时间格式化函数

  • 函数: to_char, to_date

  • 语法:

    • TO_CHAR(timestamp, format):将日期和时间转换为字符串,可以指定格式。
    • TO_DATE(string, format):将字符串转换为日期和时间。
  • 实例:

    SELECT TO_CHAR(NOW(), 'YYYY-MM-DD');  -- 2021-10-08
    SELECT TO_DATE('2021-10-08', 'YYYY-MM-DD');  -- 2021-10-08 00:00:00
    

3. 日期和时间运算函数

  • 函数: age, date_part, date_trunc, interval

  • 语法:

    • AGE(timestamp1, timestamp2):返回两个日期之间的时间间隔。
    • DATE_PART(unit, timestamp):返回指定的时间间隔单位的值。
    • DATE_TRUNC(unit, timestamp):返回指定的时间间隔单位的截断时间。
    • INTERVAL value unit:创建一个时间间隔。
  • 实例:

    SELECT AGE('2021-10-08 12:00:00', '2021-10-07 12:00:00');  -- 24:00:00
    SELECT DATE_PART('hour', '2021-10-08 12:00:00');  -- 12
    SELECT DATE_TRUNC('hour', '2021-10-08 12:30:30');  -- 2021-10-08 12:00:00
    SELECT INTERVAL '1 day';  -- 1 day
    

总结

本文介绍了一些常用的PostgreSQL函数,包括字符串、数学以及日期和时间函数。通过掌握这些函数,我们可以更加高效地对数据库进行操作。