日度归档:2019年6月2日

mssql sqlserver having count(*)>1及having sum(*) >***关键字功能及用法讲解说明


摘要:
下文讲述having count(*) >1及having sum(*) >***的功能及用法
实验环境:sql server 2008 R2



having count(*) >1 的功能 说明


having 关键字的功能常常用于和group by 关键字一起使用,对聚合后的数据进行聚合。

having 关键字主要应用于where关键字对聚合函数数据进行过滤。
例:
having 对sum 、avg、count等聚合函数过滤。


having count(*) >1:
聚合后行数大于1的纪录
having sum(*) >***:
聚合后sum的值大于指定纪录的方法



having count(*) >1 举例说明

    create table [maomao365.com]
     (keyId int identity(1,1),
       sort varchar(30),
       qty   int
     )
     go
      ----生成基础数据
      insert into [maomao365.com](sort, qty)values
      ('mssql',8),('mssql',10),('mysql',1),('mysql',8),
      (N'sql爱好者',2),(N'sql爱好者',30)
      go
        
      ----输出分组数据中,数量大于10的聚合行 
     ---使用having 对聚合数据进行过滤
      select sort,sum(qty) from  [maomao365.com] 
       where 1=1 
       group by sort 
       having sum(qty) >10  

      ----输出分组数据中,行数大于1行的数据
       select sort,
                sum(qty) as [合计数],
                count(1) as [行数] 
         from  [maomao365.com] 
       where 1=1 
       group by sort 
       having count(1) >1
     go
     truncate table maomao365.com
     drop       table maomao365.com

MySql DATE_FORMAT函数用法详解


摘要:
下文讲述mysql下date_format函数的用法,如下所示:
实验环境:sql server 2008 R2



date_format函数功能说明:

date_format语法说明:
date_format(date, format)
—–参数说明—–
date:
待格式化日期表达式
format:
转换后的格式
—-format—-

格式符

转换信息
%a

输出星期名缩写
%b

输出月名缩写
%c

月,数值
%D

带有英文前缀的月中的天
%d

月的天,数值(00-31)
%e

月的天,数值(0-31)
%f

微秒
%H

小时 (00-23)
%h

小时 (01-12)
%I

小时 (01-12)
%i

分钟,数值(00-59)
%j

年的天 (001-366)
%k

小时 (0-23)
%l

小时 (1-12)
%M

月名
%m

月,数值(00-12)
%p

AM 或 PM
%r

时间,12-小时(hh:mm:ss AM 或 PM)
%S

秒(00-59)
%s

秒(00-59)
%T

时间, 24-小时 (hh:mm:ss)
%U

周 (00-53) 星期日是一周的第一天
%u

周 (00-53) 星期一是一周的第一天
%V

周 (01-53) 星期日是一周的第一天,与 %X 使用
%v

周 (01-53) 星期一是一周的第一天,与 %x 使用
%W

星期名
%w

周的天 (0=星期日, 6=星期六)
%X

年,其中的星期日是周的第一天,4 位,与 %V 使用
%x

年,其中的星期一是周的第一天,4 位,与 %v 使用
%Y

年,4 位
%y

年,2 位


date_format函数用法举例:

 
   ---字符串转换为日期格式输出
     SELECT   DATE_FORMAT( '2019-06-02 12:23:30',' %Y-%m-%d %H:%i:%S ' ); 
     ----输出-----
     2019-06-02 12:23:30 
      ----将日期类型输出指定格式
     SELECT  DATE_FORMAT(NOW(), ' %Y-%m-%d %H:%i:%S ');
      ---输出-----     
       2019-06-02 12:23:30 

mssql sqlserver 使用sql脚本获取日期字段中的月份、年份的方法分享


摘要:
下文讲述使用sql脚本获取变量中的年份,月份的方法,如下所示
实验环境:sql server 2008 R2


       declare @maomao365 date time
       set @maomao365 ='2019-6-2'
        
        ---获取变量的年份
       select year(@maomao365)
       ----输出----
        2019 
   
      ---获取变量的月份
       select month(@maomao365)
       ----输出----
        6
   
       
      ---获取当前系统的年份和月份
       select year(getdate()),month(getdate())
       ----输出----
        2019   ,6