
SQL笔记
文章平均质量分 65
SQL笔记
学好statistics和DS
是一个学习Data Science的计算机系学生。注重扎实的理论知识,分享知识点,确保每个人都能看懂。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数据库管理:数据世界的交通警察
数据库管理就像是在维护一个永远在生长的城市。数据是市民,表是建筑,关系是道路,索引是路标,事务是交通规则。一个好的数据库管理员,既是城市规划师,又是交通警察,还是急救医生。记住,数据库不是越复杂越好,而是越适合业务需求越好。就像城市不是高楼越多越好,而是要让市民生活便利。希望这篇文章能帮你理解数据库管理的基本概念,下次听到"DBA"这个词时,你知道他们不只是"管数据库的",而是数据世界的建筑师和守护者。原创 2025-05-20 22:45:57 · 628 阅读 · 0 评论 -
Serializability_and_Snapshot_Isolation
是数据库事务隔离的最高级别,它通过强制事务串行执行来避免所有并发事务可能引起的问题,包括脏读、不可重复读、幻读以及写偏序。在可串行性隔离级别下,事务的执行就好像它们是顺序执行的一样,尽管实际上它们可能是并发执行的。是一种数据库事务隔离级别,它提供了一种乐观并发控制机制,允许事务读取数据时看到的是数据在事务开始时的一致性视图,即快照。在实际应用中,需要根据业务需求和性能要求来选择合适的隔离级别。快照隔离是一种平衡了并发性和一致性的隔离级别,适用于读多写少的应用场景,能够提供较高的并发性能和一致性的读取视图。原创 2024-12-04 16:10:39 · 538 阅读 · 0 评论 -
pandas and sqlalchemy compatibility
方法三:安装sqlalchemy-databricks 以代替SQLAlchemy,前提把SQLAlchemy卸载干净,以防到时冲突报错。原创 2024-11-29 22:01:31 · 245 阅读 · 0 评论 -
Pandas_sqlite
在Pandas中使用SQLite数据库。原创 2024-11-14 16:02:31 · 277 阅读 · 0 评论 -
Spark_natural_join
在 Apache Spark 中,和INNER JOIN是两种不同的连接操作,它们在合并数据集时有不同的行为和用途。原创 2024-11-14 16:01:52 · 867 阅读 · 0 评论 -
Sqlite_Datetime列选择三月的行
strftime 方法按照 “%Y-%m-%d %H:%M:%S” 格式将日期和时间格式化为字符串并打印。f表示format,表示格式化,和strptime正好相反,要求给一个时间对象和输出格式,p表示parse,表示分析的意思,所以strptime是给定一个时间字符串和分析模式,原创 2024-11-13 21:45:38 · 168 阅读 · 0 评论 -
SQL_HAVING小例子
简而言之,这个查询的逻辑是:对于graduates表中的每个income值,计算它的出现次数,然后只保留那些出现次数至少和其他所有income值一样多的income值。如果没有众数(即所有income值出现次数都不相同),这个查询可能不会返回任何结果,因为它要求至少等于所有其他值的出现次数。) as cnt from graduates:这部分是查询的基础,它从graduates表中选择income字段,并计算每个income值出现的次数(使用count(众数是指在一组数据中出现次数最多的数值。原创 2024-11-13 21:41:03 · 246 阅读 · 0 评论 -
SQL_UNION
在 SQL 中使用 UNION 操作符时,被联合的两个或多个 SELECT 语句的列数必须相同,并且相应的列数据类型也需要兼容。请注意,在使用 UNION 时,每个 SELECT 语句中的列数必须相同,并且相应的列数据类型必须兼容。在这个例子中,table2 的查询结果只有一列,所以在 SELECT 语句中使用了 NULL AS column2 来提供第二列的值,以便与 table1 的两列结果匹配。这将返回部门 ID 为 5 的所有员工和经理的名字,以及他们的类型。原创 2024-11-13 21:37:38 · 685 阅读 · 0 评论 -
Leecode_SQL50_1661. Average Time of Process per Machine
【代码】Leecode_SQL50_1661. Average Time of Process per Machine。原创 2024-11-08 18:27:13 · 582 阅读 · 0 评论 -
Leecode_SQL50_1280. Students and Examinations
注意一定要选择 a.subject_name!因为只有这个表是全的。若选择错了,有人的 subject_name 会是 null.用 CROSS JOIN 获取所有学生和科目的组合,不用有相同的列来 JOIN ON.原创 2024-11-08 18:25:49 · 848 阅读 · 0 评论 -
Leecode_SQL50_570. Managers with at Least 5 Direct Reports
Leecode。原创 2024-11-08 18:25:16 · 418 阅读 · 0 评论 -
Leecode_SQ50_1934. Confirmation Rate
Leecode没做出来。原创 2024-11-08 18:24:45 · 722 阅读 · 0 评论 -
SQL_over_partition_by_order_by
• window_function: 窗口函数,如SUM(), AVG(), COUNT(), MIN(), MAX(), ROW_NUMBER(), RANK(), DENSE_RANK(), LEAD(), LAG()等。• RANK() OVER (PARTITION BY salesperson_id, YEAR(date) ORDER BY amount DESC): 计算每个销售人员在每个季度的销售额排名。我们想要计算每个销售人员的总销售额,并且想要知道每个销售人员在每个季度的销售额排名。原创 2024-11-08 18:20:17 · 664 阅读 · 0 评论 -
Groupby_SQL和pandas等效例子
在SQL中使用PARTITION BY与在Pandas中使用groupby().agg()有一定的相似性,因为它们都是用于分组数据并对每组应用某种聚合函数。原创 2024-11-08 18:22:57 · 765 阅读 · 0 评论 -
SQL_having_pandas_filter
HAVING子句在SQL中用于对分组后的结果进行过滤,它通常与GROUP BY子句一起使用。HAVING子句允许你指定条件来过滤聚合函数的结果,而WHERE子句则用于在分组之前过滤原始数据。SELECT column_name, aggregate_function(column_name)FROM table_nameGROUP BY column_nameHAVING conditionORDER BY column_name;• column_name: 你想要查询的列名。• aggre原创 2024-11-08 18:22:23 · 861 阅读 · 0 评论 -
SQL_create_view
在Python中,使用NumPy库进行花式索引(fancy indexing)是一种非常强大的功能,它允许你通过使用数组索引数组。这意味着你可以使用另一个数组来指定你想要索引的主数组中的元素。步骤 1: 导入NumPy库。步骤 2: 创建一个数组。步骤 3: 使用花式索引。原创 2024-10-08 22:49:39 · 818 阅读 · 0 评论 -
Leecode pandas groupby keep cols 1070. Product Sales Analysis III
【代码】Leecode pandas groupby keep cols 1070. Product Sales Analysis III。原创 2024-10-07 22:30:08 · 286 阅读 · 0 评论 -
SQL 找出第二高的 salary
找出第二高的 salary。原创 2024-10-07 22:28:53 · 288 阅读 · 0 评论 -
SQL_WHERE子句里不能出现COUNT()
但是,如果你想基于某个计数来过滤记录,你可以使用 HAVING 子句,而不是 WHERE 子句。HAVING 子句在功能上与 WHERE 子句相似,但它是针对分组后的数据进行过滤的。这个查询会返回 column1 的值和每组的记录数,但只有当 column1 相同的记录数大于 1 时才会被包括在结果中。如果你确实想在 WHERE 子句中使用类似 COUNT() 的逻辑,你可能需要使用子查询或者 JOIN 操作来实现。请注意,过度使用子查询可能会导致性能问题,特别是在处理大量数据时。原创 2024-10-07 22:28:22 · 333 阅读 · 0 评论 -
Leecode SQL 183. Customers Who Never Order
注意,不能按name筛选!原创 2024-10-07 22:26:49 · 152 阅读 · 0 评论 -
Leecode SQL 184. Department Highest Salary 找出tie
要找出 tie 的 highest salary!原创 2024-10-07 22:26:03 · 156 阅读 · 0 评论 -
Leecode SQL 197. Rising Temperature 日期差用 DATEDIFF()
不可以写 w.recordDate = y.recordDate+ 1 因为是日期,跨月份会找不出来!原创 2024-10-07 22:24:34 · 263 阅读 · 0 评论