生成时间段不交叉的数据。
来源:互联网 发布:flac player for mac 编辑:程序博客网 时间:2024/06/18 15:21
生成时间段不交叉的数据。
设置四个变量,主要
DROP TABLE IF EXISTS `table`;CREATE TABLE `table` ( `orderID` varchar(36) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '订单ID', `postedTime` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '执行时间', `startTime` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '开始时间', `endTime` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '完成时间', `Name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '服务人员') ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;用变量的来存储上一条数据的信息,然后当前生成数据和变量里的数据对比。SELECT orderID,Name,postedTime, (@start := CASE WHEN @n = Name AND @d = postedTime THEN TIMESTAMPADD(Minute, ROUND(RAND()*12)+8, @end) ELSE TIMESTAMPADD(Minute, ROUND(RAND()*60), concat(postedTime,' 07:30:00')) END) as starttimes, (@end := TIMESTAMPADD(Minute, ROUND(RAND()*30)+30, @start)) as endtimes, @n := esName, @d := postedTimeFROM table A,(select @n :=null,@d :=null) XORDER BY Name, postedTime在update前设置变量。set @n := null, @d := null;update table a inner join (SELECT orderID,Name,postedTime, (@start := CASE WHEN @n = Name AND @d = postedTime THEN TIMESTAMPADD(Minute, ROUND(RAND()*12)+8, @end) ELSE TIMESTAMPADD(Minute, ROUND(RAND()*60), concat(postedTime,' 07:30:00')) END) as starttimes, (@end := TIMESTAMPADD(Minute, ROUND(RAND()*30)+30, @start)) as endtimes, @n := Name, @d := postedTime FROM table ORDER BY expressName, postedTime) bon a.orderID = b.orderIDset a.startTime = b.starttimes, a.endTime = b.endtimes;
阅读全文
0 0
- 生成时间段不交叉的数据。
- 根据时间段生成趋势数据
- C语言两个时间段是否交叉的判断函数
- 随机生成不重复的数据
- 海量不重复数据的生成
- Sqlite查询时间段内的数据问题解决!
- orcle中时间段数据的查询
- 批量修改某一时间段内的数据
- orale 查询两个时间段内的数据
- Oracle取30分钟,时间段的数据
- mysql如何获取某个时间段的数据
- 统计某一时间段内的数据
- 采集某一个数据时间段的访问量比率
- oracle查询某个时间段的数据
- 查询每天某个时间段的数据
- Oracle取30分钟,时间段的数据
- linux下查找特定时间段内生成的文件
- 也许有用的SQL:对单表数据进行count统计生成简单的交叉表
- 【JZOJ5428】【NOIP2017提高A组集训10.27】查询
- BZOJ 4881 [Lydsy2017年5月月赛] 二分图染色+线段树
- 利用Swig在python中调用C/C++代码
- python基础学习小结(1)
- 86. Partition List
- 生成时间段不交叉的数据。
- Java多线程知识点
- Keras 可视化无法使用的解决方案
- 求1*2*3*...*n的值并把各项相加
- 1031 UVA540 map+queue
- Putty常见错误汇总
- 反射
- 单调队列
- HDOJ 1194 Beat the Spread!