先创建数据库 CREATE TABLE [dbo].[Students]( [Id] [int] IDENTITY(1,1) NOT NULL, [age] [int] NULL, [name] [nvarchar](50) NULL, [addTime] [datetime]  NULL) ON [PRIMARY] 插入几条测试数据 INSERT [dbo].[Students] ([age], [name], [addTime]) VALUES (22, N'李四', '2015-04-08…
需求场景: SQL SERVER 中组织的数据结构是一个层级关系,现在需要抓出每个组织节点以上的全部组织信息,数据示例如下: ADOrg_ID--------------ParentID-----------------ShortName 001                                                                 顶级组织名称 001.021                     001                        …
=================================版权声明================================= 版权声明:原创文章 禁止转载  请通过右侧公告中的“联系邮箱(wlsandwho@foxmail.com)”联系我 勿用于学术性引用. 勿用于商业出版.商业印刷.商业引用以及其他商业用途. 本文不定期修正完善. 本文链接:http://www.cnblogs.com/wlsandwho/p/5141395.html 耻辱墙:http://www.cnblo…
我们在生产实践中经常会有这样的需求:分组编号. 如下有一个城市区域表region: 我们需要对上表region按city分组,对region进行排序,得到如下结果: 具体sql如下: select city,region, ) as region_no from region 此方法主要是运用over函数通过对city进行分组后,再对region进行排序(默认按首字母拼音排序),最终得到我们想要的结果. 当然,还有一种方法同样可以实现: select city,region, region_no…
select * from (  select mp.MsgID,m.Content,m.CreatorID,m.CreateTime,ROW_NUMBER() over(partition by m.CreatorID order by m.CreateTime desc) as new_index   from U_Account_WX_MsgProperty mp   join U_Account_WX_Messages m on mp.MsgID=m.MsgID  where mp.Us…
;with cte as ( select  CONVERT(DATE, DATEADD(DAY, -9, GETDATE())) as paytime union all select dateadd(day,1,paytime) from cte where paytime<GETDATE() ) select * from cte a -----------猜猜结果是什么,下面的 paytime2015-10-312015-11-012015-11-022015-11-032015-11-…
SELECT B.id , LEFT(tempname, LEN(tempname) - 1) AS name FROM ( SELECT id , ( SELECT name + ',' FROM tablename WHERE id = A.id FOR XML PATH('') ) AS tempname FROM tablename A GROUP BY id ) B…
数学函数.字符串函数.转换函数.时间日期函数 1.数学函数 ceiling()--取上限  select ceiling(oil) as 油耗上限 from car floor()--取下限 select floor(oil) as 油耗下限 from car ) as 四舍五入 from car (两个参数) select)--为保留一位小数 select abs(-10)--绝对值 select PI()--圆周率 select sqrt()--开根号 select square()--平方…
Net Framewrok 中,DateTime.MinValue => 0001/01/01 00:00:00SqlDateTime.MinValue.Value  => 1753/01/01 00:00:00 SQL Server 2005 中,DateTime 最小值           => 1753/01/01 00:00:00SmallDateTime 最小值   => 1900/01/01 00:00:00 Net Framewrok 中, DateTime.MaxV…
思想 先排序在汇总 sql server里分组查询通常用于配合聚合函数,达到分类汇总统计的信息.而其分类汇总的本质实际上就是先将信息排序,排序后相同类别的信息会聚在一起,然后通过需求进行统计计算. 使用GROUP BY进行分组查询 实例演示 --查询男女生的人数 在没有学习分组查询之前,我们可以安装常规的思路解决查询需求: select count(*) from student where sex='男' select count(*) from student where sex='女' 那…