zoukankan      html  css  js  c++  java
  • SQL中给datetime类型变量赋值

    题目 :使用存储过程统计某一时间段内各种图书借阅人数,要求:如果没有指定起始日期,就以前一个月当日作为起始日期,如果没有指定截止日期,就以当日作为截止日期.

     1 if exists(select * from sysobjects where name = 'usp_searchLendInfo')
    2 drop procedure usp_searchLendInfo
    3 go
    4 create procedure usp_searchLendInfo
    5 @startDate datetime = null,
    6 @endDate datetime =null
    7 as
    8 set nocount on
    9 declare @sDate datetime = dateadd(MONTH,-1,GETDATE()) --获取上一个月的时间
    10 declare @eDate datetime = getdate() -- 获取当前时间
    11
    12 ---当用户没有输入时 开始时间以及结束时间均为null
    13 if(@startDate is null and @endDate is null)
    14 begin
    15 set @startDate = @sDate
    16 set @endDate = @eDate
    17 end
    18 else if(@startDate is null )
    19 set @startDate = @sDate
    20
    21 else if(@endDate is null)
    22 set @endDate = @eDate
    23
    24 print '以下是从'+convert(varchar(15),@startDate)+''+convert(varchar(15),@endDate)+'图书借取信息'
    25 select bname 图书名称, COUNT(*) 借阅数量 from borrow inner join book
    26 on Book.BID = Borrow.BID where lenddate > @startDate and willdate <@endDate group by bname
    27 go
    28 exec usp_searchLendInfo '2012-2-9','2012-4-9'
  • 相关阅读:
    singleton 单例模式
    try catch finall 结构里的 return
    ConcurrentHashMap
    ConcurrentHashMap原理分析
    Java 实现两个整数变量的交换
    Java reflect 反射 3 Class.forname
    Java reflect 反射 2
    Java reflect 反射 1
    java class load 类加载
    HashMap源码解析
  • 原文地址:https://www.cnblogs.com/cnjava/p/2344310.html
Copyright © 2011-2022 走看看