SQL CHARINDEX
SQL 在2008的更新中,我最喜欢的是MERGE,2012中就是OFFSET了。
SQL 2012新的分页特性OFFSET: orde by aa offset 10 and 20
SQL 模糊查询 匹配后面有数字的
select * from users where username like 'zhangqian[0-9]'
SQL 函数不单单可以缓存写好的SQL语句,貌似还缓存读取出的数据(SheetHaveRece)
SQL 中参数为output时,会自动先返回标识指给主键,在执行添加
SQL 函数ISNUMERIC(exps),判断是否为数字,是 =1 否=0
SQL datediff(day,@StartTime,@EndTime),
SQL DateName(YEAR,StartDate) 获取日期的 年
SQL datepart(DAYOFYEAR,getdate()) 获取日期的某一部分 当前是获取今年的第几天
SQL Group By 第一排序字段,第二排序字段
SQL SubString (exp,start,end)字符串截取
SQL select right(字段,长度)从右侧开始获取N位
SQL isnumeric(字段) = 1 是否数字判断
SQL inner join [只取相同的数据]
left join [左表为主]
right join [右表为主]
SQL 查询的数据到参数中,用 is not null 来判断 IF(@PasswordWithIn IS NOT NULL)
SQL : 索引的建立-->在 "表" 下 找到"索引"分支 右键,新建添加聚集索引或非聚集索引
SQL 列数据合并:
select CT.*,STUFF((select ',' + f.Name from F_Product f where f.ID=CT.TmpId for xml path('')),1,1,'') AS Name from CT
SQL case when 的用法:
update OrderPay set NoPayMoney=(case when (@PayMoney>=AllMoney) then 0 else (@PayMoney-AllMoney) end) where OrderId=@OrderId
SQL SQL 2012的OFFSET分页方式
SQL count(*)可以忽略Null来进行统计
SQL 日期转换的神奇用法
print Convert(VARCHAR(10), GETDATE(), 2 )==13.03.12 --简写日期 print Convert(VARCHAR(10), GETDATE(),110)==03-12-2013 --获取的日期 print Convert(VARCHAR(10), GETDATE(),111)==2013-03-12 print Convert(VARCHAR(10), GETDATE(),112)==20130312 print Convert(VARCHAR(10), GETDATE(),114)==15:26:54:4 --获取的时分秒
SQL 一条查询语句 进行不同条件 统计:用sql按性别统计男生、女生人数
select sum(case 性别 when 1 then 1 else 0 end) 男生人数,sum(case 性别 when 0 then 1 else 0 end) 女生人数 from table select count(1),sum(case sex when 1 then 1 else 0 end) from users
SQL 强制删除数据库订阅:
sp_removedbreplication 'SERVICE_Test'
SQL 随机挑选10挑数据:
MySQL:order by rand() limit 10 ACCESS : order by rnd(id) --id为数据库的自动编号字段 SQL Server : order by newid()