SQL中常用函数的整理
对于sql中的函数可谓是多的不胜枚举,本文从常用函数的角度对其函数进行总结:1、日期和时间函数2、字符串函数3、系统函数流程控制语句
1、 日期和时间函数
对于日期函数我们可以分为2小类进行分析处理,
A、 日期的整体处理函数,具体的含义和语法如下所示:
DATEADD(datepart,number,date)
第一个参数说明要添加的日期类型,第二个参数是指添加类型的数量,第三个参数是指所要的参数对象
例如显示3小时之前的时间
declare @OldTime datetime
set @oldTime =getdate()
select dateadd(hh,-3,@oldtime)
对于第一个参数的保留字如下所示:
MS MILLISECOND
SS,S SECOND
MI,N MINUTE
HH HOUR
DW,W WEEKDAY
WK,WW WEEK
DD,D DAY
DY,Y DAY
DY,Y DAY OF YEAR
MM,N MONTH
QQ,Q QUARTER
YY,YYYY YEAR
B、 比较日期的不同
DETEDIFF(DATEPART,STARTDATE,ENDDATE)
第一个参数同上,第二个参数是开始的时间,第二个参数是结束的时间
C、 确定星期几的函数
DATENAME(DATEPART,DATETOINSPECT)
2、 用于获取时间和部分时间的两个函数
A、 DATEPART()用于获取部分时间的函数
B、 GETDATE()用于获取日期的函数
第二类是字符串函数
1、 单个字符的函数,与ASCII码的相互转化
ASCII() 和CHAR()两个函数
2、 字符串格式的相互转化函数
LOWER() LTRIM()
UPPER() RTRIM()
3、 字符的获取函数
LEFT(STR,LEN)
RIGHT(STR,LEN)
SUBSTRING(ORIGINAL,START,LEN)
4、 格式的相互转化函数
Str() 将数值类型转化为可变长度的字符串
Cast()
Convert(type,original)
第三类是sql的判断函数
ISDATE() ISNULL
第四类是数据流程语句
Case when…then…else…end
相关文档:
1 :普通SQL语句可以用Exec执行
例: Select * from tableName
Exec('select * from tableName')
& ......
1.说明:复制表(只复制结构,源表名:a 新表名:b)
SQL: select * into b from a where 11
2.说明:拷贝表(拷贝数据,源表名:a 目标表名:b)
SQL: insert into b(a, b, c) select d,e,f from a;
3.说明:显示文章、提交人和最后回复时间
SQL: select a.title,a.username,b.adddate from table a,(select max(adddat ......
在使用NHibernate过程中经常会使用到复杂的sql查询,但是使用hql又比较麻烦的情况下,我们往往都会想到采用原始的sql来执行。但是如何利用NHibernate来执行sql呢?问题来了,在NHibernate中也有AdoTemplate的方法可以执行sql的,但是这里要介绍的是另外一种方法:CreateSQLQuery。以下部分例子源自于网络。
实例一(源自于 ......
建表:
CREATE TABLE [DB.dbo].tableName
(Stud_id int CONSTRAINT constraintName1 not null primary key,
Name nvarchar(5) not null,
Birthday datetime,
Gender nchar(1),
Telcode char(12),
Zipcode char(6) CONSTRAINT constraintName2 CHECK(zipcode like [ ......
在分组排序过程中需要新建排序列,按条件:(物料分类+客户名称) 进行分组汇总 然后就根据该条件进行排序
1.需要拼凑两列 作为排序列,如需加入特殊字符.就会报错.
因为本身改字段就是varchar类型 需要将char类型'_' 转换成varchar
2.拼凑过程中有空格需要去空格
e.g:select (trim(物料分类)+to_char( ......