T-SQL 知识量:16 - 67 - 243
T-SQL(Transact-SQL)提供了一系列字符串函数,用于处理和操作文本数据。以下是一些常用的T-SQL字符串函数:
1. CONCAT:将两个或多个字符串连接在一起。
SELECT CONCAT('Hello', ' ', 'World'); -- 输出:Hello World
2. LEN:返回字符串的长度(字符数)。
SELECT LEN('Hello World'); -- 输出:11
3. LTRIM:删除字符串左侧的空格。
SELECT LTRIM(' Hello World'); -- 输出:'Hello World'
4. RTRIM:删除字符串右侧的空格。
SELECT RTRIM('Hello World '); -- 输出:'Hello World'
5. SUBSTRING:从字符串中提取子字符串。需要指定起始位置和长度。
SELECT SUBSTRING('Hello World', 7, 5); -- 输出:'World'
6. CHARINDEX:返回子字符串在字符串中首次出现的位置。如果未找到子字符串,则返回0。
SELECT CHARINDEX('World', 'Hello World'); -- 输出:7
7. REPLACE:在字符串中替换指定的子字符串。
SELECT REPLACE('Hello World', 'World', 'T-SQL'); -- 输出:'Hello T-SQL'
8. UPPER:将字符串转换为大写。
SELECT UPPER('Hello World'); -- 输出:'HELLO WORLD'
9. LOWER:将字符串转换为小写。
SELECT LOWER('Hello World'); -- 输出:'hello world'
10. REVERSE:反转字符串的顺序。
SELECT REVERSE('Hello World'); -- 输出:'dlroW olleH'
这些函数只是T-SQL中可用的字符串函数的一部分,还有其他更多的函数可用于处理文本数据。
T-SQL提供了多种数学函数,用于进行数学计算和数值处理。以下是一些常用的T-SQL数学函数:
1. ROUND:将数字舍入到指定的小数位数。
SELECT ROUND(123.4567, 2); -- 结果为 123.46
2. CEILING:返回大于或等于给定数字的最小整数。
SELECT CEILING(123.4567); -- 结果为 124
3. FLOOR:返回小于或等于给定数字的最大整数。
SELECT FLOOR(123.4567); -- 结果为 123
4. ABS:返回数字的绝对值。
SELECT ABS(-123); -- 结果为 123
5. RAND:返回一个随机数。如果需要种子值,可以使用RAND(seed)。
SELECT RAND(); -- 返回一个随机数
6. ROUND:将数字舍入到指定的小数位数。
SELECT ROUND(123.4567, 2); -- 结果为 123.46
7. CONVERT:将数字从一种数据类型转换为另一种数据类型。
SELECT CONVERT(DECIMAL(10, 2), '123456789.98'); -- 将字符串转换为DECIMAL类型,结果为 123456789.98
8. CEILING:返回大于或等于给定数字的最小整数。
SELECT CEILING(123.4567); -- 结果为 124
9. FLOOR:返回小于或等于给定数字的最大整数。
SELECT FLOOR(123.4567); -- 结果为 123
T-SQL提供了多种日期和时间函数,用于处理和操作日期和时间数据。以下是一些常用的T-SQL日期和时间函数:
1. GETDATE():返回当前日期和时间。
SELECT GETDATE();
2. CONVERT():将日期和时间数据从一种格式转换为另一种格式。
SELECT CONVERT(DATE, '2023-07-19 12:34:56'); -- 将字符串转换为日期格式
3. DATEADD():在日期上添加或减去指定的时间间隔。
SELECT DATEADD(DAY, 7, '2023-07-19'); -- 在日期上加7天
4. DATEDIFF():返回两个日期之间的时间间隔。
SELECT DATEDIFF(DAY, '2023-07-19', '2023-07-26'); -- 返回两个日期之间的天数差异
5. DAY():返回日期的天数部分。
SELECT DAY('2023-07-19'); -- 返回19
6. MONTH():返回日期的月份部分。
SELECT MONTH('2023-07-19'); -- 返回7
7. YEAR():返回日期的年份部分。
SELECT YEAR('2023-07-19'); -- 返回2023
8. DATEPART():返回日期或时间部分的数值表示。
SELECT DATEPART(DAY, '2023-07-19'); -- 返回19
9. DATETIMEFROMPARTS():根据指定的年、月、日、小时、分钟和秒创建一个DATETIME值。
SELECT DATETIMEFROMPARTS(2023, 7, 19, 12, 34, 56); -- 返回'2023-07-19 12:34:56'的DATETIME值
T-SQL提供了一些系统信息函数,用于获取数据库的内部信息。以下是一些常用的T-SQL系统信息函数:
1. @@VERSION:返回SQL Server的版本信息。
SELECT @@VERSION;
2. @@SERVERNAME:返回当前服务器的名称。
SELECT @@SERVERNAME;
3. @@NAME:返回当前数据库的名称。
SELECT @@NAME;
4. @@IDENTITY:返回当前会话的最后一个插入的标识列的值。
SELECT @@IDENTITY;
5. @@ROWCOUNT:返回上一条SQL语句影响的行数。
SELECT @@ROWCOUNT;
6. @@FETCH_STATUS:返回上次FETCH语句的状态。
SELECT @@FETCH_STATUS;
7. @@CURRENTDATETIME:返回当前日期和时间,包括时间部分的精确值。
SELECT @@CURRENTDATETIME;
8. @@TRANCOUNT:返回当前会话中活动的用户事务的数量。
SELECT @@TRANCOUNT;
9. @@DBTS:返回当前数据库的时间戳。
SELECT @@DBTS;
10. @@SPID:返回当前会话的服务器进程ID。
SELECT @@SPID;
这些函数可以获取SQL Server数据库的内部信息,了解当前会话的状态和属性。
T-SQL提供了多种数据类型转换函数,用于将数据从一种数据类型转换为另一种数据类型。以下是一些常用的T-SQL数据类型转换函数:
1. CAST():将一个数据类型转换为另一个数据类型。
SELECT CAST(column_name AS data_type);
2. CONVERT():将一个数据类型转换为另一个数据类型。
SELECT CONVERT(data_type, column_name);
3. ISDATE():检查给定表达式是否为有效的日期。
SELECT ISDATE(column_name);
4. ISNULL():将NULL值替换为指定的值。
SELECT ISNULL(column_name, 'replacement_value');
5. NULLIF():如果两个表达式的值相等,则返回NULL,否则返回第一个表达式的值。
SELECT NULLIF(column_name, 'value');
6. COALESCE():返回第一个非NULL值。
SELECT COALESCE(column_name1, column_name2, ...);
7. CASE:根据条件进行数据类型转换。
SELECT CASE WHEN column_name = 'value' THEN 'result' ELSE 'default_value' END;
Copyright © 2017-Now pnotes.cn. All Rights Reserved.
编程学习笔记 保留所有权利
MARK:3.0.0.20240214.P35
From 2017.2.6