TypechoJoeTheme

Toasobi的博客

最新文章

2023-09-04

三题玩转sql求均值

三题玩转sql求均值
例题1:求机器运作平均时间示例 1:输入:Activity table:machine_idprocess_idactivity_typetimestamp00start0.71200end1.52001start3.14001end4.12010start0.55010end1.55011start0.43011end1.42020start4.10020end4.51221start2.50021end5.000输出:machine_idprocessing_time00.89410.99521.456解释:一共有3台机器,每台机器运行着两个进程.机器 0 的平均耗时: ((1.520 - 0.712) + (4.120 - 3.140)) / 2 = 0.894机器 1 的平均耗时: ((1.550 - 0.550) + (1.420 - 0.430)) / 2 = 0.995机器 2 的平均耗时: ((4.512 - 4.100) + (5.000 - 2.500)) / 2 = 1.456关于这道题,首先看求均值的公式:机器 0 的平均耗时: ((1.520 - 0.7...
2023-09-04

SQL专题

0 阅读
0 评论
2023年09月04日
0 阅读
0 评论
2023-09-04

图解SQL面试题:如何比较日期数据(交叉联结)

图解SQL面试题:如何比较日期数据(交叉联结)
【解题思路】1.交叉联结首先我们来复习一下之前课程《从零学会sql》里讲过的交叉联结(corss join)的概念。使用交叉联结会将两个表中所有的数据两两组合。如下图,是对表“text”自身进行交叉联结的结果:直接使用交叉联结的业务需求比较少见,往往需要结合具体条件,对数据进行有目的的提取,本题需要结合的条件就是“前一天”。2.本题的日销表交叉联结的结果(部分)如下。这个交叉联结的结果表,可以看作左边三列是表a,右边三列是表b。红色框中的每一行数据,左边是“当天”数据,右边是“前一天”的数据。比如第一个红色框中左边是“当天”数据(2号),右边是“前一天”的数据(1号)。题目要求,销售额条件是:“当天” > “昨天”(前一天)。所以,对于上面的表,我们只需要找到表a中销售额(当天)大于b中销售额(昨天)的数据。3.另一个需要着重去考虑的,就是如何找到 “昨天”(前一天),这里为大家介绍两个时间计算的函数: datediff(日期1, 日期2): 得到的结果是日期1与日期2相差的天数。 如果日期1比日期2大,结果为正;如果日期1比日期2小,结果为负。例如:日期1(2019-01...
2023-09-04

SQL专题

0 阅读
0 评论
2023年09月04日
0 阅读
0 评论
2023-08-31

SQL对字段内容长度过滤

SQL对字段内容长度过滤
对于SQL表,用于计算字符串中字符数的最佳函数是 CHAR_LENGTH(str),它返回字符串 str 的长度。另一个常用的函数 LENGTH(str) 在这个问题中也适用,因为列 content 只包含英文字符,没有特殊字符。否则,LENGTH() 可能会返回不同的结果,因为该函数返回字符串 str 的字节数,某些字符包含多于 1 个字节。以字符 '¥' 为例:CHAR_LENGTH() 返回结果为 1,而 LENGTH() 返回结果为 2,因为该字符串包含 2 个字节。SELECT tweet_id FROM tweets WHERE CHAR_LENGTH(content) > 15
2023-08-31

SQL专题

0 阅读
0 评论
2023年08月31日
0 阅读
0 评论
2023-08-31

分表之后如何关联(附sql)

分表之后如何关联(附sql)
案例背景:假设有一张菜谱信息表,需要将里面的点赞字段单独做一张表关联,如何修改xml1. 修改映射关系,使得将分表之后的数据按照原来的形式映射到返回值字段上其中recipe_zan为之前的点赞字段,recipe_zan_num为分表后的点赞字段2. 删除Base_Column_List中的该字段(不参与查询插入等操作)3. 修改SQL如图:我们单独分析修改的部分SQL语句:先从整个SQL分析,其实它就是一层层新构建表的嵌套查询,如下:SELECT recipe.* FROM ( SELECT recipe.** FROM( ... <!--这里就是关联所有用到的表,最后将关联后的表命名为recipe--> )recipe )recipe这样就可以关联多表进行查询了,至于做修改的几个地方:<!--如果它为NULL,则返回0;否则返回recipe.recipe_zan_num的实际值--> CASE WHEN recipe.recipe_zan_num IS NULL THEN 0 ELSE recip...
2023-08-31

SQL专题

0 阅读
0 评论
2023年08月31日
0 阅读
0 评论
2023-08-30

生产者消费者4种实现

生产者消费者4种实现
synchronized之wait与notify实现最基础的实现方式public class producerCoustomer1 { private static Integer count = 0; //当前队列中有几个生产出的物品 private static final Integer FULL = 10; //一共能放多少个生产出的物品 private static String LOCK = "lock"; //全局锁 /** * 定义生产者 */ class Producer implements Runnable { @Override public void run() { //线程执行方法 for(int i = 0; i < 10; i++){ try{ Thread.sleep(3000); //先睡个3s ...
2023-08-30

技术文章

0 阅读
0 评论
2023年08月30日
0 阅读
0 评论