- 文本函数
--系统函数位置: 可编程性→函数→系统函数 -- 查询ASCII码
select ASCII('a') --查询数值对应的ASCII码
select CHAR(97) --Left 、 Right 截取字符串
Use SchoolDB
Go
select * from Student where LEFT(StuEnName,1)='j'
select * from Student where Right(StuEnName,1)='n' --CHARINDEX 第一次出现字符的位置
select CHARINDEX('i',StuEnName,1),* from Student --字符串长度
select LEN(StuEnName),* from Student -- TEXTPTR 返回对应于varbinary格式的Text,Ntext,或 image列的文本指针
select *,TEXTPTR(Remark) from Student where StuID='001' --检查特定文本的指针 是否是有效的text,text或image
select *,TEXTVALID('Student.Remark',TEXTPTR(Remark)) from Student where StuID='001' - 日期函数
---------------日期函数-----------------
select GETDATE()
select GETUTCDATE() --世界标准时间值 select DAY(GETDATE()) --今年的第几天
select Month(GETDATE()) --今天的第几个月
select Year(GETDATE()) select DATEPART(Quarter,GETDATE()) --季度
select DATEPART(Month,GETDATE()) --月份
select DATEPART(WEEK,GETDATE()) --今天的第几周
select DATEPART(Year,GETDATE()) --年
select DATEPART(DAYOFYEAR,GETDATE())
select DATEPART(WEEKDAY,GETDATE()) --本周的第几天,从周日开始
select DATENAME(WEEKDAY,GETDATE()) --星期几 --日期转义
select CONVERT(varchar(10),GETDATE(),120) --2017-01-16
select CONVERT(varchar(10),GETDATE(),112) --20170116 select Cast(GETDATE() as varchar(10)) --01 16 2017
select Cast(1 as char(1))+'2345' --数值型转为字符型后,连接字符 --日期加减
select DATEADD(dd,-1,GETDATE()) -- 日期
select DATEADD(qq,-1,GETDATE()) -- 季度 --Sql Server 把0解释为 1900年1月1日
select DATEPART(YEAR,0),DATEPART(MONTH,0),DATEPART(DAY,0) - 系统函数
---------------系统函数-----------------
select COL_LENGTH('dbo.Student','StuName') --字段长度
select OBJECT_ID('dbo.Student') --表对应的ID
select COL_Name( OBJECT_ID('dbo.Student'),1) --表第一个字段的名称 select DB_ID('SchoolDB') --数据库编号
select HOST_ID(),HOST_Name() --宿机信息 select USER_NAME() - 聚合函数
---------------聚合函数-----------------
select AVG(StuAge) as 平均年龄 from Student
select SUM(StuAge) as 平均年龄 from Student日期函数补充:
-
--基准年 : 1990年1月1日
SELECT DATEPART(YEAR,0),DATEPART(MONTH,0),DATEPART(DAY,0) --DATENAME
SELECT DATENAME(DAY,GETDATE()) -- 01
SELECT DATENAME(WEEKDAY,GETDATE()) -- 星期三 SELECT CONVERT(VARCHAR(10),GETDATE(),120) --2017-09-27
SELECT CONVERT(VARCHAR(10),GETDATE(),112) --20170927SELECT YEAR(GETDATE()) SELECT CAST('12.34534' AS decimal(18,2)) SELECT SUM(ISNULL(5,0)) -- SUM汇总的时候,最好考虑到NULL的情况 SELECT COUNT(DISTINCT(Sex)) FROM Student -- 先去重复,再进行统计
相关文章
- Sql Server 2012 分页方法分析(offset and fetch)
- Microsoft SQL server 2012数据库学习总结(一)
- sql server内置存储过程、查看系统信息
- 遇到Sql Server 2012 AlwaysOn的同步事务传输问题
- 无法在Windows Server 2012中建立与SQL的连接
- SQL Server 2012安装Northwind示例数据库
- 从SQL Server函数返回多个值
- SQL Server返回最后一个标识值的三个函数:IDENT_CURRENT、@@IDENTITY、SCOPE_IDENTITY
- SQL Server返回最后一个标识值的三个函数:IDENT_CURRENT、@@IDENTITY、SCOPE_IDENTITY
- SQL Server返回最后一个标识值的三个函数:IDENT_CURRENT、@@IDENTITY、SCOPE_IDENTITY