大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
首先呢根据题目来看实在数据库实现的时候没有考虑全面。在设计阶段可以只有出生日期,但应该能分析到年龄是经常使用的,必须将年龄设计成派生属性,在关系的实现时将其作为表的一个列age,并为其设置默认值year(getdate())-year(出生日期),这样在查询的时候直接查选age即可。建议修改表结构,一劳永逸。其次,如果不修改表结构,也只能使用sql中的日期函数,比如datediff。在这给出sqlserver中的写法:
成都创新互联公司长期为上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为滁州企业提供专业的成都网站设计、网站建设,滁州网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。
select DATEDIFF(yy, GETDATE(), 出生日期) as 'age' from table_name
还有一种办法,就是在应用编程中操作,利用脚本语言进行处理。
工具:sqlserver 2008 R2
步骤:
1、给定数据表“学生”,内容如下:
2、现在要将性别为女的年龄增加一岁,使用如下语句:
update 学生 set 年龄=年龄+1 where 性别='女'
3、执行后结果如下,可以看出姓名为“二果”的女生,年龄由原来的19岁增加了1岁,其他两位同学的年龄没有改变。
SqlServer中通过出生日期计算年龄可用year函数。步骤如下:有student表,数据如下,其中birthday列为生日列。
、要计算每个人的年龄,可用如下语句:
查询结果如下,年龄计算结果出现:
美国Microsoft公司推出的一种关系型数据库系统。SQLServer是一个可扩展的、高性能的、为分布式客户机/服务器计算所设计的数据库管理系统,实现了与WindowsNT的有机结合,提供了基于事务的企业级信息管理系统方案。
主要特点是高性能设计,可充分利用WindowsNT的优势。
系统管理先进,支持Windows图形化管理工具,支持本地和远程的系统管理和配置。
强大的事务处理功能,采用各种方法保证数据的完整性。
支持对称多处理器结构、存储过程、ODBC,并具有自主的SQL语言。 SQLServer以其内置的数据复制功能、强大的管理工具、与Internet的紧密集成和开放的系统结构为广大的用户、开发人员和系统集成商提供了一个出众的数据库平台。
(1)假设你没有生日这一列alter table add birthday datetime
假设你没有年龄这一列alter table add age float
(2)给某人加入生日1990-1-1,update table set birthday ='1990-1-1' where ....
计算年龄 update table set age =datediff(year,birthday,getdate()) where ....
以上代码sqlserver2008