
Sql
文章平均质量分 59
bbl_bbg
这个作者很懒,什么都没留下…
展开
-
SQL 根据日期精确计算年龄
第一种:一张人员信息表里有一人生日(Birthday)列,跟据这个列,算出该人员的年龄datediff(year,birthday,getdate())例:birthday = '2003-3-8'getDate()= '2008-7-7'结果为:5这样结果是会返回该人员的大概年龄,但不精确.不会精确到月或日.按照上面测试的日期,该人员的实际年龄应该还不满5岁。在需要精转载 2014-01-19 15:04:30 · 1372 阅读 · 0 评论 -
日期格式
select CONVERT(varchar, getdate(), 120 ) 2004-09-12 11:06:08select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','') 20040912110608select CONVERT(varchar(12) , ge转载 2014-03-03 13:22:53 · 683 阅读 · 0 评论 -
with as 用法(笔记)
举例with 表别名 as(select ....)with a as(select SUM(1) as Number,SUM(case when CallSecondssubstring(Content,len(Content)-3,4) as Servetypefrom Oca_CallService where Status=1 and CONVERT(转载 2014-01-21 10:17:21 · 794 阅读 · 0 评论 -
sql having, not exists
基于数据库中的成绩表:成绩(学号,课程名,成绩)用SQL语句写出只选修一门的学生的学号、课程名、成绩。select * from 成绩表 where 学号 in (select 学号 from 成绩表 group by 学号 having count(课程名)=1); having称为分组滤过条件,也就是说是分组需要的条件,所以必须与group by联用也就是说转载 2014-03-15 10:25:51 · 2245 阅读 · 0 评论 -
sql之left join、right join、inner join的区别
left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录inner join(等值连接) 只返回两个表中联结字段相等的行举例如下: --------------------------------------------表A记录如下:aID aNum1转载 2014-08-13 09:49:16 · 404 阅读 · 0 评论 -
"用户 'sa' 登录失败。原因: 该帐户被禁用"的解决方案
用户 'sa' 登录失败。原因: 该帐户被禁用 打开security(安全性) -- logins(登录名) ,右键选中sa,选择properties(属性),点击Status(状态)切换到状态面板,将Login(登录)设置为Enabled(启用)。转载 2014-09-01 13:52:28 · 3550 阅读 · 1 评论 -
笔记(根据性别,不同年龄段统计人数)
select sum(case when Gender='M' then 1 else 0 end)man,sum(case when Gender='F' then 1 else 0 end)woman,sum(case when FLOOR(datediff(DY,Birthday,getdate())/365.25) Between 60 and 70 then 1 else 0 e转载 2014-01-19 16:52:15 · 2562 阅读 · 0 评论 -
oracle EXISTS语句用法
比如 a,b 关联列为 a.id = b.id,现在要取 a 中的数据,其中id在b中也存在: select * from a where exists(select 1 from b where a.id = b.id) 或者:现在要取 a 中的数据,其中id在b中 不存在: select * from a where not exists(select 1 from b转载 2015-10-12 15:06:51 · 741 阅读 · 0 评论