SQL Server函数

  • 一、聚合函数
    对一组值执行计算,并返回单个值。除count外,聚合函数都会忽略空值。聚合函数常与SELECT 语句的GROUP BY 一起使用
    聚合函数为确定性函数,任何时候使用一组特定的输入值调用聚合函数,返回值都是相同的
    SUM:所有值的和(smallint tinyint 数据类型当int处理。忽略NULL )
    AVG:计算平均值(返回值类型不一定和传递的列相同,float 与read类,返回float.)
    MIN:最小值(DISTINCT 无意义;不能用于bit字段;忽略NULL,但如果全为NULL ,则返回NULL;不能使用聚合函数和子查询)
    MAX:最大值(DISTINCT 无意义;不能用于bit字段;忽略NULL,但如果全为NULL ,则返回NULL;不能使用聚合函数和子查询,不能从 BIT,TEXT,IMAGE类型中选出最大值)
    COUNT:组中项的数量(返回INT数据类型,)
    DISTINCT:返回一个集合,并从指定的集合中删除重复的元组

二、数学函数

  • 对数字表达式进行数学计算,并将结果返回给用户,默认情况,传递给数字函数的数字将被解释为双精度浮点数
  • ABS:绝对值
  • COS:弧度的余弦值
  • COT:弧度的余切值
  • PI:返回圆周率
  • POWER:表达式乘指定次方 POWER(2,3)
  • RAND:返回0~1的随机FLOAT数
  • ROUND:四舍五入为指定的长度或精度 round(123.99,3)
  • SIGN:指定表达式的零(0)、正号(+1)、负号(-1)
  • SQUARE:指定表达式的平方 square(2)
  • SQRT:表达式的平方根 sqrt(4)
  • TRAN:正切值

三、字符串函数

  • 作用于char 、varchar 、binary、varbinary数据类型以及隐式转换为char 或varchar
  • ASCII:返回字符串表达式最左端字符的ASCII码值
  • REVERSE:返回表达式的反转
  • CHARINDEX:返回字符串中指定表达式的起始位置 charinddex(‘afdafrerfe’,‘d’,start_loction)
  • RIGHT:从右边开始,取得字符串右边指定个数的字符 RIGHT(‘FDAFA’,4)
  • LEFT:从字符串左边起,取字符串左边起指定个数的字符 left(‘FDAFA’,4)
  • STR:返回由数字数据转换的字符数据 ,当表达式超出指定长度时,返回**
  •   str(float类型数,总长度(包含小数点,符号,数字及空格,默认10),小数的位数)  str('12.339',6,2)  返回12.34
    
  • LEN:返回指定字符串的字符的个数。不是字节数。len(‘fvsfdsfgs’)
  • SUBSTRING:返回指定个数的字符 substring(‘wwrreea’,start_positon,len)
  • REPLACE:将指定的字符串替换为另一个指定的字符串 replace(‘要搜索的字符串’,‘待替换的字符串’,‘要替换为的字符串’)
    四、日期和时间函数
  • DATEADD:向指定日期加上一段时间,返回一个新的datetime dateadd(‘month’,number(若不是整数,废弃小数部分),date)
  • DATEDIFF:返回跨两个指定日期的日期和时间边界数
  • GETDATE:返回当前系统日期和时间 select getdate() as ‘现在的时间’
  • DAY:返回指定日期中日的整数 等价于 datepart( dd,date) select day(‘2024-06-13’) as ‘day’
  • MONTH:返回指定日期中月的整数 等价于 datepart( mm,date) select month(‘2024-06-13’) as ‘month’
  • YEAR:返回指定日期中年的整数 等价于 datepart(yy,date) select year(‘2024-06-13’) as ‘year’
  • DATEDIFF:返回日期和时间的边界数 datediff(day/year/month/hour/minute/second/millisecond,‘开始时间’,结束时间)

五、转换函数

  • CAST和CONVERT 不但可以将指定的护具类型转换为另一种数据类型,还可以用来获取各种特殊的数据格式,cast 函数优先于convert函数
  • CAST: cast(expression as date_type) 如:select cast(‘fdafdagg’ as nvarchar(10)) as 结果
  • CONVERT:按指定的格式将数据转换为另一个数据类型 CONVERT(datetype[length],expression[,style])
    datetype:目标系统类型,不能是自定义类型
    style:日期的样式,指定当将datetime数据转换为某种字符数据时,或将某种字符数据转换为datetime数据时使用的样式
    convert(datetime, getdate(),126)

元数据函数

  • 返回与数据库相关的信息
  • 返回数据库中数据表或视图的个数和名称
  • 返回数据表中数据字段的名称、数据类型、长度等描述信息
  • 返回数据表中定义的约束,索引,主键,外键等信息
  • COL_LENGTH:返回列的长度,以字节为单位 col_length(‘table’,‘column’)
  • COL_NAME:返回数据库列的名称,该列具有相应的表标识符或列标识符 col_name(table_id,column_id) table_id获取方法object_id(‘table’)
  • DB_NAME:返回数据库名 db_name([database_id]) database_id 若未指定,则返回当前数据库名
SQL Server函数是用于在T-SQL中执行特定任务的代码块。根据其性质,函数可以分为确定性函数和非确定性函数。确定性函数在相同的参数下始终返回相同的结果,而非确定性函数的结果可能会受到其他因素的影响。\[1\] 非确定性函数在使用自定义函数等特定的SQL编程对象时有一些限制。这是因为SQL Server需要显式执行这些函数,而不能依赖于缓存或预编译的可执行对象。因此,在构建可重用的编程对象时,理解函数的确定性与非确定性是很重要的。\[2\] 此外,SQL Server还提供了一些工具函数,用于返回服务器和数据库的配置细节,以及返回不同对象属性状态的通用和专用函数。这些函数封装了对系统表和用户数据库的查询,建议使用这些系统函数而不是自己创建对系统表的查询,以防将来SQL Server版本对模式进行更改。\[3\] 总结来说,SQL Server函数是用于执行特定任务的代码块,可以分为确定性函数和非确定性函数。在使用自定义函数等特定的SQL编程对象时,对非确定性函数有一些限制。此外,SQL Server还提供了一些工具函数,用于返回服务器和数据库的配置细节。 #### 引用[.reference_title] - *1* *2* *3* [SQL函数说明大全](https://blog.csdn.net/leamonjxl/article/details/6309864)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值