当前位置:Gxlcms > 数据库问题 > SQLserver 向表中添加工作日,不排除节假日,只排出星期六星期日

SQLserver 向表中添加工作日,不排除节假日,只排出星期六星期日

时间:2021-07-01 10:21:17 帮助过:2人阅读

创建表 create table WeekDays( id int primary key identity(1,1), WeekDay nvarchar(20), Status int --判断是否启用 )
  1. <span style="color: #008080;">--</span><span style="color: #008080;">--添加一年的工作日</span>
  2. <span style="color: #0000ff;">DECLARE</span> <span style="color: #008000;">@num</span> <span style="color: #0000ff;">int</span>
  3. <span style="color: #0000ff;">DECLARE</span> <span style="color: #008000;">@count</span> <span style="color: #0000ff;">int</span>
  4. <span style="color: #0000ff;">set</span> <span style="color: #008000;">@num</span> <span style="color: #808080;">=</span> <span style="color: #800000; font-weight: bold;">1</span>
  5. <span style="color: #0000ff;">set</span> <span style="color: #008000;">@count</span> <span style="color: #808080;">=</span> <span style="color: #800000; font-weight: bold;">1</span>
  6. <span style="color: #0000ff;">WHILE</span> <span style="color: #008000;">@num</span> <span style="color: #808080;"><=</span><span style="color: #800000; font-weight: bold;">365</span> <span style="color: #008080;">--</span><span style="color: #008080;">时间跨度有闰年的就是366天</span>
  7. <span style="color: #0000ff;">begin</span>
  8. <span style="color: #0000ff;">INSERT</span> <span style="color: #0000ff;">into</span> WeekDays <span style="color: #0000ff;">VALUES</span> ( <span style="color: #ff00ff;">convert</span>(<span style="color: #0000ff;">nvarchar</span>(<span style="color: #800000; font-weight: bold;">10</span>),<span style="color: #ff00ff;">dateadd</span>(dd,<span style="color: #008000;">@num</span>, <span style="color: #ff0000;">‘</span><span style="color: #ff0000;">2017-07-05</span><span style="color: #ff0000;">‘</span>),<span style="color: #800000; font-weight: bold;">23</span>),<span style="color: #800000; font-weight: bold;">1</span>)<span style="color: #008080;">--</span><span style="color: #008080;"> 2017-07-05 星期三</span>
  9. <span style="color: #0000ff;">if</span> <span style="color: #008000;">@count</span><span style="color: #808080;">=</span><span style="color: #800000; font-weight: bold;">2</span>
  10. <span style="color: #0000ff;">begin</span>
  11. <span style="color: #0000ff;">set</span> <span style="color: #008000;">@num</span> <span style="color: #808080;">=</span> <span style="color: #008000;">@num</span><span style="color: #808080;">+</span><span style="color: #800000; font-weight: bold;">3</span>
  12. <span style="color: #0000ff;">set</span> <span style="color: #008000;">@count</span> <span style="color: #808080;">=</span> <span style="color: #008000;">@count</span><span style="color: #808080;">+</span><span style="color: #800000; font-weight: bold;">3</span>
  13. <span style="color: #0000ff;">end</span>
  14. <span style="color: #0000ff;">else</span>
  15. <span style="color: #0000ff;">begin</span>
  16. <span style="color: #0000ff;">set</span> <span style="color: #008000;">@num</span> <span style="color: #808080;">=</span> <span style="color: #008000;">@num</span><span style="color: #808080;">+</span><span style="color: #800000; font-weight: bold;">1</span>
  17. <span style="color: #0000ff;">set</span> <span style="color: #008000;">@count</span> <span style="color: #808080;">=</span> <span style="color: #008000;">@count</span><span style="color: #808080;">+</span><span style="color: #800000; font-weight: bold;">1</span>
  18. <span style="color: #0000ff;">end</span>
  19. <span style="color: #0000ff;">IF</span> <span style="color: #008000;">@count</span> <span style="color: #808080;">=</span> <span style="color: #800000; font-weight: bold;">8</span>
  20. <span style="color: #0000ff;">set</span> <span style="color: #008000;">@count</span> <span style="color: #808080;">=</span> <span style="color: #800000; font-weight: bold;">1</span>
  21. <span style="color: #0000ff;">end</span>

 

SQLserver 向表中添加工作日,不排除节假日,只排出星期六星期日

标签:

人气教程排行