存储里查找属于某日期的季度数据或本季度的数据
来源:互联网 发布:sql 多结果 链接 编辑:程序博客网 时间:2024/04/29 18:02
存储里调用函数
注:SUBSTRING(CAST(GETDATE() AS NVarChar(500)), 7, 4) 也是得到2007
SELECT SUBSTRING(CAST(GETDATE() AS NVarChar(500)), 6, 5) AS Expr1 FROM jdkh
SELECT SUBSTRING(CAST(GETDATE() AS NVarChar(500)), 7, 4) AS Expr1 FROM jdkh
得到的都是2007
SELECT GETDATE() AS Expr1 FROM jdkh
得到的是2007-3-2 10:11:33
-----------------------------------------
为什么存储里
set @strSql4= @strSql4+ ' ' + 'and q11 = (SUBSTRING(CAST(GETDATE() AS NVarChar(500)), 6, 5))'
找不出数据
就是要
set @strSql4= @strSql4+ ' ' + 'and q11 = (SUBSTRING(CAST(GETDATE() AS NVarChar(500)), 7, 4))'
-------------------------------------------
函数写在哪里?
Tables 建立表
Stored Procedures 建立存储
写在User Defined Functions
存储:
if @sql3 is null or @sql3=''
set @strSql4= @strSql4+ ' ' + 'and (substring(cast(q10 as NVarChar(500)),6,5))=(substring(cast(getdate() as NVarChar(500)),6,5))'
else
begin
set @strSql4= @strSql4+ ' ' + 'and (substring(cast(q10 as NVarChar(500)),6,5))='+@sql3+''
end
查找和某年相等的数据或本年的数据
if @sql4 is null or @sql4=''
set @strsql4 = @strSql4+ ' ' + ' and dbo.ComputeQuarter(q10) = dbo.ComputeQuarter2(getdate())'
else
begin
set @strsql4 = @strSql4+ ' ' + ' and dbo.ComputeQuarter(q10) = '+ @sql4
end
q10和getdate()都是参数
第一个函数dbo.ComputeQuarter(getdate())功能是显示本季度的数据
第二个函数dbo.ComputeQuarter2(q10)功能是显示和某日期相对应季度的数据(判断日期属于哪个季度)
dbo.ComputeQuarter(q10)就是把时间字段q10转化为季度的函数,等价于datepart(qq,q10)
-------------------------
函数1:
CREATE FUNCTION dbo.ComputeQuarter (@DATE datetime)
RETURNS int
AS
BEGIN
declare @month int
declare @jidu int
set @month = month(@DATE)
if(@month > 0 and @month <4)
set @jidu =1
else if(@month >= 4 and @month <7)
set @jidu =2
else if(@month >= 7 and @month <10)
set @jidu =3
else
set @jidu =4
RETURN(@jidu)
END
函数2:
CREATE FUNCTION dbo.ComputeQuarter2(@DATE datetime)
RETURNS int
AS
BEGIN
declare @month int
declare @jidu int
set @month = month(@DATE)
if(@month > 0 and @month <4)
set @jidu =1
else if(@month >= 4 and @month <7)
set @jidu =2
else if(@month >= 7 and @month <10)
set @jidu =3
else
set @jidu =4
RETURN(@jidu)
END
- 存储里查找属于某日期的季度数据或本季度的数据
- 巧用trunc函数,获取某日期范围内的数据
- SQL 语句查询指定某日期的数据
- 数据的存储与查找
- 某年某月某日属于某月的第几周
- Android手机开发:日期函数之判断某日期格式是否之前+计算某日期之前N天或之后N天的日期
- 按日期保存数据的sql server动态存储过程
- 查找游戏里数据存放的内存位置
- c++类的成员函数、数据成员存储方式(是否属于类的对象)
- 往Android的Application对象里存储数据的陷阱
- 往Android的Application对象里存储数据的陷阱
- 三季度经济数据推迟发布 加息敏感期来临
- 48. 关联的大数据属于数据库
- 查询某个月或某日的记录
- 数据在机器里的存储问题(c程序)
- 数据在掉电保存设备里的存储顺序,
- 将存储过程里的数据 插入临时表
- 为什么不能往Android的Application对象里存储数据
- 修炼成合格的程序员
- 怎么得到同一页面里的某个方法的返回值?
- 创建Oracle自动建表处理文件
- DLL(Dynamic Link Libraries)专题
- 存储里调用函数?函数写在哪里?
- 存储里查找属于某日期的季度数据或本季度的数据
- .net之EMail正则表达式验证
- 存储里判断大小,然后赋值
- 存储里比较2007(输入)和2007-2-26(数据库)这样的时间格式
- 存储里case when用法和and 后加条件
- 动态生成RadioButton
- Eclipse 误删文件怎么办
- 动态生成Label
- 工作经历