您的位置:首页 > 数据库

SQL 日常开发笔记(持续更新)

2013-04-03 17:12 465 查看
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()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: