探讨如何计算age的sql函数
ALTER FUNCTION [dbo].[get_FullAge]
(
@birthday datetime, @currentDay datetime
)
RETURNS INT
AS
BEGIN
DECLARE @age INT
SET @age = DATEDIFF(YEAR, @birthday, @currentDay)
IF DATEDIFF(DAY, DATEADD(YEAR, @age, @birthday), @currentDay) <= 0
SET @age = @age - 1
IF DATEPART(MONTH, @birthday) = 2 AND DATEPART(DAY, @birthday) = 29 AND DATEPART(MONTH, @currentDay) = 3
AND DATEPART(DAY, @currentDay) = 1 AND
NOT (YEAR(@currentDay) % 4 = 0 AND (YEAR(@currentDay) % 100 !=0 OR YEAR(@currentDay) % 400 = 0))
SET @age = @age - 1
IF @age < 0
SET @age = 0
RETURN @age
END
--Sql根据出生日期计算age(不是很准确)
1. select datediff(year,EMP_BIRTHDAY,getdate()) as '年龄' from EMPLOYEEUnChangeInfo
2. floor((DateDiff(day,u.EMP_BIRTHDAY,getdate()))/365
相关推荐
-
探讨如何计算age的sql函数
复制代码 代码如下: ALTER FUNCTION [dbo].[get_FullAge]( @birthday datetime, @currentDay datetime)RETURNS INTASBEGINDECLARE @age INTSET @age = DATEDIFF(YEAR, @birthday, @currentDay)IF DATEDIFF(DAY, DATEADD(YEAR, @age, @birthday), @currentDay) <= 0 SET @age =
-
sql 函数大全 比较常用的一些函数整理第1/2页
select语句中只能使用sql函数对字段进行操作(链接sql server),select 字段1 from 表1 where 字段1.IndexOf("云")=1;这条语句不对的原因是indexof()函数不是sql函数,改成sql对应的函数就可以了.left()是sql函数.select 字段1 from 表1 where charindex('云',字段1)=1; 字符串函数对二进制数据.字符串和表达式执行不同的运算.此类函数作用于CHAR.VARCHAR. BINARY. 和
-
oracle 合并查询 事务 sql函数小知识学习
表查询: 合并查询:使用union关键字,可将满足条件的重复行去掉. 复制代码 代码如下: select ename,sal,job from emp where sal > 2500 union select ename,sal,job from emp where job = 'MANAGER'; 而union all用法和union相似,但是不会取消重复行. intersect 用来取两个结果的交集. minus用来取两个结果的差集. 使员工scott的岗位,工资,补助与SMITH员工一样
-
利用python在excel里面直接使用sql函数的方法
我们一般在Excel里面是使用数据连接属性里面写sql语句,或者vba里面利用ado组件执行sql语句. 新版的Excel里面带上了Power query的功能也可以使用Odbc.DataSource()和Odbc.Query()函数写sql语句. 今天讲一下利用Python直接在excel里面使用xlwings addin 里的一个名为sql的函数. 首先我们需要在python里面安装好xlwings模块. 执行pip/conda install xlwings命令 即可完成安装. 然后继续在
-
SQL函数将某个字段合并在一起的操作
最近遇到需要将关联表中的某个字段全部查询出来并且重新组合为一个字段,这个时候普通的连接查询就满足不了需求了,需要用到SQL函数来完成: ALTER function dbo.getResCodesByOwnerId(@OwnerId INT) returns nvarchar(2000) as begin DECLARE @codes VARCHAR(2000) SET @codes='' select @codes=stuff((select ','+residence_code from c
-
SQL函数Group_concat的用法及说明
目录 SQL函数Group_concat的用法 完整语法如下 Group_concat函数长度问题 解决的方式有三个 总结 SQL函数Group_concat的用法 完整语法如下 group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符']) SELECT * FROM testgroup 表结构与数据如上 现在的需求就是每个id为一行 在前台每行显示该id所有分数 group_concat 上场!!! SEL
-
SQL函数substr使用简介
substr(string ,1,3) 函数解读:取string 中重左往右取3字长的字符串. 结果为:str 从右往左呢? 应该有另一个函数来提供这样的功能吧! 事实上,从右往左也是这个函数 只是参数的不同而已. substr(String,-1,3) 功能解读:取string中右边1位开始取3位. 结果为:g substr(string,start,length) string - 指定的要截取的字符串. start - 必需,规定在字符串的何处开始.正数 - 在字符串的指定位置开始,负数
-
探讨php中防止SQL注入最好的方法是什么
如果用户输入的是直接插入到一个SQL语句中的查询,应用程序会很容易受到SQL注入,例如下面的例子: 复制代码 代码如下: $unsafe_variable = $_POST['user_input'];mysql_query("INSERT INTO table (column) VALUES ('" . $unsafe_variable . "')"); 这是因为用户可以输入类似VALUE"); DROP TABLE表; - ,使查询变成: 复制代码 代
-
深入探讨:宏、内联函数与普通函数的区别
内联函数的执行过程与带参数宏定义很相似,但参数的处理不同.带参数的宏定义并不对参数进行运算,而是直接替换:内联函数首先是函数,这就意味着函数的很多性质都适用于内联函数,即内联函数先把参数表达式进行运算求值,然后把表达式的值传递给形式参数. 内联函数与带参数宏定义的另一个区别是,内联函数的参数类型和返回值类型在声明中都有明确的指定:而带参数宏定义的参数没有类型的概念,只有在宏展开以后,才由编译器检查语法,这就存在很多的安全隐患. 使用内联函数时,应注意以下问题: 1)内联函数的定
-
SQLServer与Access常用SQL函数区别
SQLServer Access CASE...WHEN... IIF() SUBSTRING() MID() ISNULL() IIF(IS NULL) SELECT *,IIf([State]=1,'√','×') as StateTag FROM Leave order by id desc SELECT IIf([CateID] = 1, "文档"),IIf([CateID] = 2, "视频"),IIf([CateID] = 3, "音频&quo
随机推荐
- VBS操作Excel常见方法
- C# 视频播放类
- jQuery事件的绑定、触发、及监听方法简单说明
- JS对象与json字符串格式转换实例
- 手把手教你清理系统垃圾文件
- 在VBS中定义字节数组Byte()介绍
- Windows使用bat批处理实现守护进程脚本分享
- 使用iOS控件UICollectionView生成可拖动的桌面的实例
- iOS自定义日期demo分享
- IOS 图文混排(CoreText.framework)详解及实例
- 两种oracle创建字段自增长的实现方式
- ASP.NET中GridView、DataList、DataGrid三个数据控件foreach遍历用法示例
- 两种简单实现菜单高亮显示的JS类代码
- ajax请求post和get的区别以及get post的选择
- Java垃圾回收finalize()作用详解
- SQL SERVER 数据库备份的三种策略及语句
- Java中String、StringBuffer、StringBuilder的区别详解
- JAVA设计模式之责任链模式详解
- Unix下C程序内存泄漏检测工具Valgrind的安装与使用详解
- C++函数pyrUp和pyrDown来实现图像金字塔功能