- 博客(28)
- 收藏
- 关注
原创 牛客--大厂笔试真题 - 副本
从听歌流水中找到18-25岁用户在2022年每个月播放次数top 3的周杰伦的歌曲。流水表 play_log:歌曲表song_info:用户表user_info:user_idage1000018输出:2. 11, 15、26要练习3.is null 和sum用法带数字用sumnull 是用 is 或者 is not null 判断,而不是 =null有时候数据出不来 ,是没带来源,如:a1.overdue_days 而不是overdue_days4.日期年月获取有
2025-03-17 23:29:21
728
原创 总结 11.1
- case when 和 if 本质没区别-- if 实现双分支,直接if(条件成立,不成立)-- if 实现多分枝 if嵌套-- case when 实现双分支 case when 条件 then else end-- case when 实现多分枝 多个case即可在使用GROUP BY子句时,会涉及到聚合列和非聚合列的概念。SELECT列表中的所有非聚合列都必须包含在GROUP BY子句中,或者它们必须是GROUP BY子句中列的函数依赖项。数据库系统本身并不“推断”
2024-10-23 13:06:35
510
原创 10.31总结
子窗口区分于大窗口,是在大窗口上开小窗口窗口函数 over(partiton by 分组字段[order by 排序字段 排序方式][frame 子窗口]partiton by 分组 但是不影响数据的总行数。
2024-10-23 12:58:07
593
原创 10.30总结
空的也算行乘进去了产生一次性查询多张表 将A表中的每一条数据和B表中的每一条数据进行连接,产生的结果的数据量为 A表中数据条数 * B表中的数据条数A中的有 10 条数据 B中有 5 条数据 连接形成的结果中 10 * 5 = 50 条数据笛卡儿积的产生是要避免的表和表之间是有关系的,进行表连接的时候要指定连接条件-- 笛卡尔积 查询的时候 要避免 笛卡尔积的出现-- 一次查询两种表 10个学生 4个班级 每个学生都和所有的班级进行一次连接 10*4=40。
2024-10-21 09:53:46
1067
原创 9.27 总结
对一段功能独立并且重复使用的代码进行封装,当我们需要使用的时候,在进行调用,目的是为了减少代码的重复性,提高代码的复用率def 函数名(形式参数名, 形式参数名1,...,形式参数名n):函数功能体return 返回值def关键字,用来定义函数的函数名,根据功能自定义的名字,需要遵守标识符规则() 存放函数的形式参数的,如果没有形式参数,()内为空形式参数: 函数运算的时候 有些数据的未知[动态]的, 将这些未知的数据使用变量名来进行表示,这个变量名就是形式参数,简称形参。
2024-09-02 02:08:30
993
原创 9.26总结
对一段功能独立并且重复使用的代码进行封装,当我们需要使用的时候,在进行调用,目的是为了减少代码的重复性,提高代码的复用率def 函数名(形式参数名, 形式参数名1,...,形式参数名n):函数功能体return 返回值def关键字,用来定义函数的函数名,根据功能自定义的名字,需要遵守标识符规则() 存放函数的形式参数的,如果没有形式参数,()内为空形式参数: 函数运算的时候 有些数据的未知[动态]的, 将这些未知的数据使用变量名来进行表示,这个变量名就是形式参数,简称形参。
2024-09-02 02:07:59
910
原创 9.25 总结
#注: num33 = num4 // 100 % 10 这里要考虑多位数的情况,比如要是四位数,不加 % 会得到两位数,无法取得十位数。数据是递增或者递减 【递增或者递减的数据的差值-步长,在整个数据序列中是一致的】num44 = num4 // 1000 此处直接整除是因为最高就四位,所以不用取余。pass 是代码块占位符,代码块中不能空白的 【那块的逻辑暂时未写 可以使用pass占位】用来产生等差数列的,这个结果也是容器型的一个数据,是range类型的。次数不明确,用while。
2024-09-02 02:07:04
412
原创 9.22总结
本质是在遍历容器型的数据,【遍历:将容器中的数据从左向右逐个取出】,容器中有几个数据,for-in包含的操作就被被执行几次。隐隐式布尔转换:把非布尔类型的数据当做布尔类型判定逻辑【数据本身没有变化】,这种行为称为隐式布尔类型转换。解读:判断if后面的表达式是否成立,如果成立的话执行表达式1,否则执行表达式2。Python为这两个场景的循环提供了对应的循环机制,分别是。for-in循环,应用与明确循环次数的。在编程语言中见到的循环通常是两种情况。循环:周而复始重复的做某件事。注意:在Python中,
2024-09-02 02:05:52
471
原创 9.20总结
value = 77b = 0b1001 # 二进制print(b) # 9 print打印时候自动转为十进制o = 0o765 #八进制x = 0off # 十六进制。
2024-09-02 02:04:40
1444
原创 10.27 总结
排序的操作 order by 字段 默认是升序 asc 还是降序 desc。应用场景:判断条件不是一个确定的值,而是通过查询得到的结果。默认使用逗号分隔 separator 指定其他分隔符号。如果正则表达式没有限定开头的结尾,找的是包含对应内容的。聚合之后的筛选用 having。聚合之前的筛选用 where。把一个查询结果应用在另一个。
2024-08-15 01:16:29
439
原创 10.26总结
数据库,长期存在电脑上,安装有组织的方式存储的数据集合,保存数据的容器数据库管理系统,用来管理和操作数据的软件,用来建议、维护、使用数据库,对数据库进行管理,用户可以使用数据库管理系统进行访问数据库中的数据我们用的是数据库管理系统,而不是数据库。
2024-08-15 01:14:55
823
原创 9.25 总结
十六进制的符号集有:0 1 2 3 4 5 6 7 8 9 a b c d e f汉字的unicode编码是从到:\u4e00 到、\u9fa5not 0的结果是True。
2023-09-25 22:55:12
234
1
原创 9.22总结
本质是在遍历容器型的数据,【遍历:将容器中的数据从左向右逐个取出】,容器中有几个数据,for-in包含的操作就被被执行几次。隐隐式布尔转换:把非布尔类型的数据当做布尔类型判定逻辑【数据本身没有变化】,这种行为称为隐式布尔类型转换。解读:判断if后面的表达式是否成立,如果成立的话执行表达式1,否则执行表达式2。Python为这两个场景的循环提供了对应的循环机制,分别是。for-in循环,应用与明确循环次数的。在编程语言中见到的循环通常是两种情况。循环:周而复始重复的做某件事。,但是编程语言中是禁止死循环。
2023-09-25 22:51:30
120
1
原创 9.21总结
【二进制的最高位为符号位:0表示正数 1表示负数】,之前接触过进制转换,数据大小不一样,获取的二进制数据中位的个数不一样,怎么确定哪个是最高位?【计算机中数据存储时开辟的最小单元是字节,1个字节是8位,位数一确定 最高位就确定了】,比如常规的数据开启的字节数是4个字节。介绍字符串数据的比较,本质比较的是字符对应的十进制数据,比较规则是相同位置的字符进行比较,直到比较出结果。这个运算符的运算机制是对二进制数据进行计算的,因为直接是针对于二进制数据计算,计算效率是非常高的。
2023-09-24 18:15:32
106
1
原创 9.20总结
value = 77b = 0b1001 # 二进制print(b) # 9 print打印时候自动转为十进制o = 0o765 #八进制x = 0off # 十六进制## 注:```python# int 还有另外一个功能:把其他进制格式的字符串数据转化为十进制数据的整数类型# 把其他进制转化为十进制【要求:解读数据的时候,数据是几进制的,就得按照几进制解读】''' (这里什么模式) (这里写什么)int(其他进制的字符串数据,base=数据的进制模式)
2023-09-22 21:03:41
113
1
原创 9.19总结
计算机之父冯.诺伊曼,根据冯.诺依曼结构体系,计算机是分为5部分的。输入设备把信息传递到计算机中,比如键盘、鼠标。输出设备信息从计算机中传递出来,比如音响、显示器、打印机等。存储器计算机被发明出来就是用于数据的存储与计算的计算机上有两个存储数据的设备:内存、硬盘硬盘:电脑上的磁盘分区,存储在硬盘中的数据都是持久化存储【只要不删除就一直存在】内存:内存是用来存储计算机上应用app运行产生的数据,当程序员退出的时候,该程序存储于内存中的数据就会被释放。
2023-09-19 22:47:22
116
原创 9.6 总结
函数的定义:把常用的逻辑功能 独立的代码段 进行封装, 在需要使用的时候 直接调用即可# 求半径为2的圆的面积print(f'半径为2的圆的面积是# 求半径为2的圆的面积 area = 3.1415196 * 2 ** 2 print(f'半径为2的圆的面积是 {area } ') # 用函数可为: 半径是未知的 - - - 形式参数。
2023-09-06 22:48:24
64
1
原创 9.1 总结
列表list:可变的有序型容器特点:可变:数据的值可以发生变化,可以修改/增加/删除 有序: 容器存储放数据的时候,容器中有多少个数据,会给数据设置编号,编号是从0开始[左边视为开始] 可以通过编号定位获取这个位置的数据,也可以修改。 这个编号被称为下标/索引 数据在进行定义的时候,数据标识是[], 在[]中定义多个数据,数据之间使用逗号分隔 比如[19, 24, 26, 22]
2023-09-04 22:21:44
102
1
原创 8.31 总结
注意: 和随着取值 会发生变化的 【定义一个变量 用来接受累加和的值】只要条件成立,程序就一直在此循环,直到循环条件不成立。变量名使用等号进行赋值时 会把原本的数据给覆盖掉。产生一个容器 容器放着1-100的数据。遍历容器取值 ,取出来一个累加起来。break 是结束所在的循环。
2023-08-31 22:58:58
62
原创 8.29 总结
语法错误: 无效语法语法错误: 不允许给False再次赋值语法错误:无效的十进制文字语法错误: 标识符中无效字符缩进错误: 意外缩进语法错误: 不能赋值为True类型错误: 'int’对象不可调用语法错误 :SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 0-4: truncated \uXXXX escape。
2023-08-29 22:58:12
405
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人