转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> Sql Server >> 正文
SQL Server中如何计算农历         

SQL Server中如何计算农历

作者:闵涛 文章来源:闵涛的学习笔记 点击数:3112 更新时间:2007/11/14 11:07:30
25d0'''',9680  
UNION  ALL  SELECT  2008,''''0x092d0'''',37584  UNION  ALL  SELECT  2009,''''0x0cab5'''',51893  
UNION  ALL  SELECT  2010,''''0x0a950'''',43344  UNION  ALL  SELECT  2011,''''0x0b4a0'''',46240  
UNION  ALL  SELECT  2012,''''0x0baa4'''',47780  UNION  ALL  SELECT  2013,''''0x0ad50'''',44368  
UNION  ALL  SELECT  2014,''''0x055d9'''',21977  UNION  ALL  SELECT  2015,''''0x04ba0'''',19360  
UNION  ALL  SELECT  2016,''''0x0a5b0'''',42416  UNION  ALL  SELECT  2017,''''0x15176'''',86390  
UNION  ALL  SELECT  2018,''''0x052b0'''',21168  UNION  ALL  SELECT  2019,''''0x0a930'''',43312  
UNION  ALL  SELECT  2020,''''0x07954'''',31060  UNION  ALL  SELECT  2021,''''0x06aa0'''',27296  
UNION  ALL  SELECT  2022,''''0x0ad50'''',44368  UNION  ALL  SELECT  2023,''''0x05b52'''',23378  
UNION  ALL  SELECT  2024,''''0x04b60'''',19296  UNION  ALL  SELECT  2025,''''0x0a6e6'''',42726  
UNION  ALL  SELECT  2026,''''0x0a4e0'''',42208  UNION  ALL  SELECT  2027,''''0x0d260'''',53856  
UNION  ALL  SELECT  2028,''''0x0ea65'''',60005  UNION  ALL  SELECT  2029,''''0x0d530'''',54576  
UNION  ALL  SELECT  2030,''''0x05aa0'''',23200  UNION  ALL  SELECT  2031,''''0x076a3'''',30371  
UNION  ALL  SELECT  2032,''''0x096d0'''',38608  UNION  ALL  SELECT  2033,''''0x04bd7'''',19415  
UNION  ALL  SELECT  2034,''''0x04ad0'''',19152  UNION  ALL  SELECT  2035,''''0x0a4d0'''',42192  
UNION  ALL  SELECT  2036,''''0x1d0b6'''',118966  UNION  ALL  SELECT  2037,''''0x0d250'''',53840  
UNION  ALL  SELECT  2038,''''0x0d520'''',54560  UNION  ALL  SELECT  2039,''''0x0dd45'''',56645  
UNION  ALL  SELECT  2040,''''0x0b5a0'''',46496  UNION  ALL  SELECT  2041,''''0x056d0'''',22224  
UNION  ALL  SELECT  2042,''''0x055b2'''',21938  UNION  ALL  SELECT  2043,''''0x049b0'''',18864  
UNION  ALL  SELECT  2044,''''0x0a577'''',42359  UNION  ALL  SELECT  2045,''''0x0a4b0'''',42160  
UNION  ALL  SELECT  2046,''''0x0aa50'''',43600  UNION  ALL  SELECT  2047,''''0x1b255'''',111189  
UNION  ALL  SELECT  2048,''''0x06d20'''',27936  UNION  ALL  SELECT  2049,''''0x0ada0'''',44448  

--===============================================================

--然后就可以用这个函数来取农历日期了  
 
CREATE  FUNCTION  fn_GetLunar(@solarDay  DATETIME)          
RETURNS  datetime      
     
AS          
BEGIN          
   DECLARE  @solData  int          
   DECLARE  @offset  int          
   DECLARE  @iLunar  int          
   DECLARE  @i  INT            
   DECLARE  @j  INT            
   DECLARE  @yDays  int          
   DECLARE  @mDays  int          
   DECLARE  @mLeap  int          
   DECLARE  @mLeapNum  int          
   DECLARE  @bLeap  smallint          
   DECLARE  @temp  int          
         
   DECLARE  @YEAR  INT            
   DECLARE  @MONTH  INT          
   DECLARE  @DAY  INT          
             
   DECLARE  @OUTPUTDATE  DATETIME          
     
   --保证传进来的日期是不带时间          
   SET  @solarDay=cast(@solarDay  AS  char(10))          
   SET  @offset=CAST(@solarDay-''''1900-01-30''''  AS  INT)      
     
         
   --确定农历年开始          
   SET  @i=1900          
   --SET  @offset=@solData          
   WHILE  @i<2050  AND  @offset>0          
   BEGIN          
       SET  @yDays=348          
       SET  @mLeapNum=0          
       SELECT  @iLunar=dataInt  FROM  SolarData  WHERE  yearId=@i          
         
       --传回农历年的总天数          
       SET  @j=32768          
       WHILE  @j>8          
       BEGIN          
           IF  @iLunar  &  @j  >0          
               SET  @yDays=@yDays+1          
           SET  @j=@j/2          
       END          
         
       --传回农历年闰哪个月  1-12  ,  没闰传回  0          
       SET  @mLeap  =  @iLunar  &  15          
         
       --传回农历年闰月的天数  ,加在年的总天数上          
       IF  @mLeap  >  0          
       BEGIN          
           IF  @iLunar  &  65536  >  0          
               SET  @mLeapNum=30          
           ELSE            
               SET  @mLeapNum=29          
         
           SET  @yDays=@yDays+@mLeapNum          
       END          
                 
       SET  @offset=@offset-@yDays          
       SET  @

上一页  [1] [2] [3]  下一页


[Access]sql随机抽取记录  [Access]ASP&SQL让select查询结果随机排序的实现方法
[聊天工具]企业邮件系统的利器----FoxMail Server  [系统软件]OPEN SERVER 5.0.5安装EXP300阵列柜
[系统软件]SQL语句性能优化--LECCO SQL Expert  [系统软件]关于Windows2000Server的灾难恢复
[常用软件][网络]下载服务革命性风暴Poco Server评测  [C语言系列]动态创建SQL Server数据库、表、存储过程等架构信…
[C语言系列]SQL Server到DB2连接服务器的实现  [C语言系列]SQL Server到SYBASE连接服务器的实现
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台