PostgreSQL 常用函数学习笔记
1. string_agg 函数
string_agg(expression, delimiter)
函数将一个表达式(expression)的结果连接成一个字符串,使用指定的分隔符(delimiter)分隔各个结果。
例如:
sqlCopy CodeSELECT string_agg(name, ', ')
FROM products;
以上代码将会返回一个字符串,其中包含 products
表中所有 name
列的值,每个值之间用逗号和空格分隔。
2. array_agg 函数
array_agg(expression)
函数将一个表达式(expression)的结果作为一个数组返回。
例如:
sqlCopy CodeSELECT array_agg(name)
FROM products;
以上代码将会返回一个只有一个元素的数组,该元素是 products
表中所有 name
列的值。
3. date_trunc 函数
date_trunc(unit, timestamp)
函数将一个时间戳(timestamp)截断到指定的精度(unit)。
例如:
sqlCopy CodeSELECT date_trunc('hour', created_at)
FROM orders;
以上代码将会返回一个只包含订单创建时间(created_at)小时部分的时间戳。
4. round 函数
round(number, precision)
函数将一个数字(number)四舍五入到指定的精度(precision)。
例如:
sqlCopy CodeSELECT round(total, 2)
FROM orders;
以上代码将会返回一个只包含订单总额(total)小数点后两位的数字。
5. substring 函数
substring(string, from, to)
函数从一个字符串(string)中取出指定位置(from 和 to)的子串。
例如:
sqlCopy CodeSELECT substring(description, 1, 10)
FROM products;
以上代码将会返回一个只包含商品描述(description)前 10 个字符的子串。
6. concat 函数
concat(string1, string2)
函数将两个字符串(string1 和 string2)连接成一个字符串。
例如:
sqlCopy CodeSELECT concat(first_name, ' ', last_name)
FROM users;
以上代码将会返回一个只包含用户姓名(first_name 和 last_name)的字符串,两个名字之间以空格分隔。