Sybase 是一种关系型数据库管理系统,它提供了丰富的函数,可分为数学函数、字符串函数、日期和时间函数、聚合函数等几大类。以下为你详细介绍各类常见函数的说明、用法及示例:
数学函数
1. ABS()
- 说明:返回一个数的绝对值。
- 用法:
ABS(numeric_expression) - 示例:
收起
sql
SELECT ABS(-10); -- 结果为 10
2. CEILING()
- 说明:返回大于或等于指定数值表达式的最小整数。
- 用法:
CEILING(numeric_expression) - 示例:
收起
sql
SELECT CEILING(3.14); -- 结果为 4
3. FLOOR()
- 说明:返回小于或等于指定数值表达式的最大整数。
- 用法:
FLOOR(numeric_expression) - 示例:
收起
sql
SELECT FLOOR(3.99); -- 结果为 3
4. ROUND()
- 说明:将数值表达式四舍五入到指定的长度或精度。
- 用法:
ROUND(numeric_expression, length [, function])numeric_expression:要进行四舍五入的数值。length:指定的精度。function(可选):0 表示四舍五入,非 0 表示截断。
- 示例:
收起
sql
SELECT ROUND(3.14159, 2); -- 结果为 3.14
字符串函数
1. LEN()
- 说明:返回字符串的长度。
- 用法:
LEN(string_expression) - 示例:
收起
sql
2. SUBSTRING()
SELECT LEN('Hello'); -- 结果为 5
- 说明:返回字符串的一部分。
- 用法:
SUBSTRING(string_expression, start, length)string_expression:要提取子字符串的字符串。start:开始位置,从 1 开始计数。length:要提取的字符数。
- 示例:
收起
sql
SELECT SUBSTRING('Hello World', 7, 5); -- 结果为 'World'
3. UPPER() 和 LOWER()
- 说明:
UPPER()将字符串转换为大写,LOWER()将字符串转换为小写。 - 用法:
UPPER(string_expression)LOWER(string_expression)
- 示例:
收起
sql
SELECT UPPER('hello'); -- 结果为 'HELLO'
SELECT LOWER('WORLD'); -- 结果为 'world'
4. REPLACE()
- 说明:将字符串中的一部分替换为另一个字符串。
- 用法:
REPLACE(string_expression, search_string, replacement_string)string_expression:要进行替换操作的字符串。search_string:要查找并替换的字符串。replacement_string:用于替换的字符串。
- 示例:
收起
sql
SELECT REPLACE('Hello World', 'World', 'Sybase'); -- 结果为 'Hello Sybase'
日期和时间函数
1. GETDATE()
- 说明:返回当前系统日期和时间。
- 用法:
GETDATE() - 示例:
收起
sql
SELECT GETDATE(); -- 返回当前日期和时间
2. DATEADD()
- 说明:在指定的日期上加上指定的时间间隔。
- 用法:
DATEADD(datepart, number, date)datepart:要添加的时间部分,如year、month、day等。number:要添加的时间间隔数。date:要进行操作的日期。
- 示例:
收起
sql
SELECT DATEADD(day, 7, '2025-02-20'); -- 返回 2025-02-27
3. DATEDIFF()
- 说明:返回两个日期之间的时间间隔。
- 用法:
DATEDIFF(datepart, startdate, enddate)datepart:要计算的时间部分,如year、month、day等。startdate:开始日期。enddate:结束日期。
- 示例:
收起
sql
SELECT DATEDIFF(day, '2025-02-01', '2025-02-20'); -- 结果为 19
聚合函数
1. SUM()
- 说明:返回指定列的总和。
- 用法:
SUM([ALL | DISTINCT] expression)ALL(默认):对所有值进行计算。DISTINCT:只对不同的值进行计算。expression:要进行求和的列或表达式。
- 示例:假设存在一个
Orders表,包含Amount列:
收起
sql
SELECT SUM(Amount) FROM Orders;
2. AVG()
- 说明:返回指定列的平均值。
- 用法:
AVG([ALL | DISTINCT] expression) - 示例:
收起
sql
SELECT AVG(Amount) FROM Orders;
3. COUNT()
- 说明:返回指定列中的行数或非空值的数量。
- 用法:
COUNT(*):返回表中的总行数。COUNT([ALL | DISTINCT] expression):返回指定列中非空值的数量。
- 示例:
收起
sql
SELECT COUNT(*) FROM Orders; -- 返回 Orders 表的总行数
SELECT COUNT(CustomerID) FROM Orders; -- 返回 CustomerID 列中非空值的数量
4. MAX() 和 MIN()
- 说明:
MAX()返回指定列中的最大值,MIN()返回指定列中的最小值。 - 用法:
MAX([ALL | DISTINCT] expression)MIN([ALL | DISTINCT] expression)
- 示例:
收起
sql
SELECT MAX(Amount) FROM Orders; -- 返回 Amount 列的最大值
SELECT MIN(Amount) FROM Orders; -- 返回 Amount 列的最小值
以上只是 Sybase 中部分常见函数的介绍,Sybase 还提供了许多其他功能强大的函数,你可以参考 Sybase 官方文档获取更详细的信息。
写真集传送门THE END



