数据结构与算法

Select进阶查询·流程控制函数

一、语法格式: if语句 语法格式: if(条件,v1,v2) 如果条件成立,则返回v1,否则返回v2 ifnull语句 语法格式: ifnull(v1,v2) 如果v1不是空,则返回v1,否则返回v2 相当于如果v1为空,返回默认值的效果 case语句 语法格式 (可以有多个判断添加): 如果字段名等于某个值 则返回对应位置then后面的值 并结束判断 如果与所有值都不相等

MySQL 查询优化(六): MySQL 的查询优化排序优化机制

对结果进行排序操作的代价可能很高,因此可以通过避免排序或让参与排序的数据行更少来优化查询性能。 当 MySQL 不能使用索引产生有序结果时,它必须对数据行进行排序。这有可能是在内存中进行也可能是在磁盘进行,但 MySQL 始终将这个过程称之为 filesort,即便实际上并没有使用一个文件。 如果用于排序的值可以一次性放入排序缓存中,MySQL 可以在内存中使用快排算法进行排序。如果 MySQL

解决sqlite3查询数据返回字典格式的方法

问题: python使用 sqlite3 数据库进行增删改查时发现,sqlite3查询数据返回的元组,会导致我使用csv库导出数据时会报错。 如下图,是sqlite3最初查询返回的数据格式: 源码: import sqlite3 conn = sqlite3.connect('show.db.php') cursor = conn.cursor() def catalog_page_num()

算法魅力-BFS解决多源最短路

目录前言前提引入谈谈多源最短路题目实练矩阵飞地的数量地图中的最高点地图分析结束语前言 在图论与网格问题中,最常见的一类题目就是“求最短距离”。通常情况下,我们会从某一个起点出发,利用 BFS(广度优先搜索) 逐层扩展,得到从该点到所有点的最短路。然而,在许多实际场景中,往往存在 多个

【数据结构】二叉树-堆(下)-链式二叉树

个人主页~二叉树-堆(上) 栈和队列 二叉树 四、堆的代码实现 Heap.h Heap.c test.c 五、堆的应用 堆排序思想进行排序 六、二叉树链式结构的实现 BTree.h BTree.c test.c 四、堆的代码实现 Heap.h#pragma once #include <stdio.h>

MySQL 数据表优化设计(七):常见的数据表设计误区整理

虽然会有一些常规意义上的数据表错误设计和优秀设计原则,但是同样也会有 MySQL 特定的一些情况,这会导致我们犯一些 MySQL 特定的错误。本篇讨论常见的设计误区。 误区一:过多的数据列 MySQL 存储引擎的 API 是按照行缓冲区方式从服务端和存储引擎复制数据。服务端将缓冲区数据解码成数据列。然而,将行缓冲区的格式转换为数据行数据结构的列可能会代价很高。MyISAM 固定使用与服务端匹配

flink-cdc同步mysql数据到elasticsearch

本文首发于我的个人博客网站 等待下一个秋-Flink 什么是CDC? CDC是(Change Data Capture 变更数据获取)的简称。核心思想是,监测并捕获数据库的变动(包括数据 或 数据表的插入INSERT、更新UPDATE、删除DELETE等),将这些变更按发生的顺序完整记录下来,写入到消息中间件中以供其他服务进行订阅及消费。 [图片上传失败...(image-7f4dd8-166

基于Neo4j图数据库实现系统架构可视化

一、图数据库简介 图数据库是NoSQL领域中的一种,在处理相关联的大数据方面比关系型数据库天然具有优势,近年来在知识图谱、金融风控、社交关系等场景中发挥了重要的角色功能。同时,图数据库在AI领域,天然适合诸如记忆提取、关联推理、归纳探索等场景,成为了人工智能领域不可缺少的部分。 Neo4J是比较通用和常见的图数据库,具有社区版和企业版之分,普通学习使用免费的社区版即可。Neo4J还提供了一个Web

Jenkins之声明式流水线语法

1 流水线 1.1 简介 jenkins 有 2 种流水线分为声明式流水线与脚本化流水线,脚本化流水线是 jenkins旧版本使用的流水线脚本,新版本 Jenkins(2.5之后引入) 推荐使用声明式流水线。 jenkins流水线语法和gradle语法很类似,都是基于了groovy的闭包语法 1.2 声明式流水线简介 在声明式流水线语法中,流水线过程定义在Pipeline{}中,Pipeline块