SQL语句基础知识(一)

SQL语句基础知识(一)

1. 随机生成指定范围的日期

--生成一段时间内的随机时间
declare @Date_start datetime 
declare @Date_end datetime 
set @Date_start= '2019-06-01' 
set @Date_end=getdate() 
select 时间=dateadd(second,abs(checksum(newid()))%(datediff(second,@Date_start,@Date_end)+1),@Date_start)

精确到秒, 如果要精确到分钟需要把second改成minute

原文链接

2. 循环插入N条数据

--循环执行插入10000条数据
declare @ID int
declare @datet datetime
declare @placecode int
declare @Date_start datetime 
declare @Date_end datetime 

begin
set @ID=1
set @datet='2019-09-01 17:22:24.990'
set @placecode=@ID
set @Date_start= '2019-09-01 00:22:24.990' 
set @Date_end= '2019-09-30 17:22:24.990'

while @ID<=10000
begin
insert into tb
values(@datet,@placecode)
set @ID=@ID+1
set @datet=dateadd(second,abs(checksum(newid()))%(datediff(second,@Date_start,@Date_end)+1),@Date_start)
set @placecode=@ID
end
end

循环变量@ID,控制循环10000次,

@datet 和 @placecode 为插入数据,

@Date_start 和 @Date_end 控制随机生成的日期起止时间.

begin 和 end 控制执行代码块

declare 定义变量

原文链接

3.解决中林的问题(按照小时统计销售额)

select datepart(hh,time) as 时间, COUNT(money) as 销售额 
from tb
where time between '2019-09-01 00:00:00.000' and '2019-09-10 00:00:00.000'
group by datepart(hour,time)

datepart 去取出时间中的一部分做为条件

比如: hour minute second 等

? 中林是谁

哦 我的一个好友!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值