利用SQL找出一个月中有多少个周日

2016-02-19 19:17 64 1 收藏

今天图老师小编要向大家分享个利用SQL找出一个月中有多少个周日教程,过程简单易学,相信聪明的你一定能轻松get!

【 tulaoshi.com - 编程语言 】

  问:我想利用SQL找出在任意一月中的周日的数量。请帮帮我。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  答:以下是一个简单的技巧:

  确定一个具体的月份,确定这个月的第一天

  使用INTEGERS表生成一系列这个月第一天之后的日期覆盖这个月所有的日期

  用日期函数确定这一生成日期是否就是周日

  用count()获取周日的测试结果

  为了创建integers表,用到下列命令:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

createtableintegers 
  (iintegernotnullprimarykey);
insertintointegers(i)values(0);
insertintointegers(i)values(1);
insertintointegers(i)values(2);
insertintointegers(i)values(3);
insertintointegers(i)values(4);
insertintointegers(i)values(5);
insertintointegers(i)values(6);
insertintointegers(i)values(7);
insertintointegers(i)values(8);
insertintointegers(i)values(9);

  现在我们假设你要测试的是2006年9月份,所以你确定的日期就是2006-09-01,然后用下面的查询生成这个月所有的日期。注意:每个数据库系统都会有不同的日期函数,所以一定要知道怎么使用你的数据库系统。这个例子就用到了MySQL语法。

set@day1=’2006-09-01’; 
        
selectdate_add(@day1 
     ,interval10*tens.i+units.iday) 
           asadate 
 fromintegersastens
cross
 joinintegersasunits
wheredate_add(@day1 
     ,interval10*tens.i+units.iday)
  date_add(@day1 
     ,interval1month)
order
  byadate 

  你会发现这里有一个ORDER BY子句,所以你可以充分相信该查询正确生成了这个月所有的日期。现在只需要将函数相加确定一个周六,并且计算的日期。现在只需要将函数相加确定一个周六,并进行计算:

set@day1=’2006-09-01’;     
           
selectcount(
    casewhendayofweek(
     date_add(@day1 
     ,interval10*tens.i+units.iday)
             )=1
      then1elsenullend) assundays 
 fromintegersastens
cross
 joinintegersasunits
wheredate_add(@day1 
     ,interval10*tens.i+units.iday)
  date_add(@day1 
     ,interval1month) 
Result:
sundays
  4

  非常简单,不是吗?

来源:http://www.tulaoshi.com/n/20160219/1620588.html

延伸阅读
标签: 孕前
怀孕初期症状怎么应对     约半数妇女于停经6周左右出现畏寒、头晕、乏力、嗜睡、流涎、食欲不振、喜食酸物或厌恶油腻、恶心、晨www.tulaoshi.com起呕吐等症状,称早孕反应。早孕反应多于妊娠12周左右自行消失。     许多孕妇常经历的恶心、呕吐或腹部不适感,很容易让怀孕的美好感觉变成痛苦。有些孕妇对某些...
过午不食一个月能减多少斤 1 个人的减肥效果受到体重基数、体质、进食量、运动量的影响,因此并没有一个确定的减重数字。坚持过午不食减肥法一个月,没有特别的进行运动减肥,以身高160来算。 体重基数≥150,第一个月能减15斤以上。 体重基数≥120,第一个月能减10斤以上。 体重基数≤100,第一个月能减3-5斤。 过午不食减肥法坚持...
标签: 宝宝 身高 育儿
新生儿一月长多少厘米: 从出生到一周岁,宝宝身高一般增长25cm;其中前6个月,平均每月增长2.5cm,合计大约15cm;后六个月,平均每月增长1.5cm,合计大约10cm。出生后头三个月宝宝体重每月增加约700-1000g,3-6月每月平均增加约600-800g,7-12月每月平均增加约350g。 初生婴儿一个月的发育标准: 男宝宝:身高48.7-61.2cm;体重3.09-...
标签: 宝宝 育儿
新生儿一月吃几罐奶粉: 1、混合喂养的宝宝:一罐差不多 如果是妈妈自己有奶水,只是不太够,需要添加部分奶粉的话,那一般一个月一罐就可以了。 2、纯奶粉喂养的宝宝:3-4罐 如果妈妈完全没有奶水,纯奶粉喂养的话,那一个月差不多需要3-4罐,也是一笔不小的开销。 计算方法: 刚出生的宝宝每顿奶量约为60毫升,其中奶粉约10克,一天...
标签: 月经
月经经验分享 图钉问: 月經一個月沒來重慶協和醫院★醫保定點單位★tel:023-68791666.人文協和,源遠流長。重慶協和醫院幾經遷址,如今座落於重慶市石橋鋪渝州路60號,現有醫療業務用房16000平方米,編制床位300張,已發展成為一家集醫療、預防、保健、康複、教研為一體的現代化綜合性醫院。 图老师答: ...

经验教程

180

收藏

36
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部