当我查询的时候明明两张表都有数据,但是用了not in 之后就出问题了!! 这是为什么呢? 原因很简单:由于NULL不能进行如下的“操作” –如果null参与算术运算,则该算术表达式的值为null。...--如果在not in子查询中有null值的时候,则不会返回数据。 我们中了最后一条!!! 子查询的字段中如果有null 值则不会反悔任何数据!! ? 学到了 下次注意了!!哈哈!
题目 给定整数 p 和 m ,一个长度为 k 且下标从 0 开始的字符串 s 的哈希值按照如下函数计算: h...子串 定义为一个字符串中连续非空字符组成的序列。..."ee" 是长度为 2 的第一个哈希值为 0 的子串,所以我们返回 "ee" 。..."fbx" 是长度为 3 的第一个哈希值为 32 的子串,所以我们返回 "fbx" 。 注意,"bxz" 的哈希值也为 32 ,但是它在字符串中比 "fbx" 更晚出现。...解题 逆向做字符串哈希,然后用大小为 k 的滑动窗口,向前滑动 每次以 O(1) 的时间复杂度获取窗口内的字符串哈希值 from functools import lru_cache class Solution
如果下:Table_A表和Table_B表,要求查询出在Table_A表中不在Table_B表中的记录。 CREATE TABLE [dbo]....) ON [PRIMARY] GO ID Name NULL 张三 002 李四 NULL 王五 很容大家第一时间相当的写法是...WHERE a.ID NOT IN ( SELECT b.ID FROM dbo.Table_B AS b) 然而查询出来并没有达到预期的...ID Name 001 张三 003 王五 原因很简单:由于NULL不能进行如何的“操作” –如果null参与算术运算,则该算术表达式的值为null。...--如果在not in子查询中有null值的时候,则不会返回数据。
题目 一个字符串的所有字符都是一样的,被称作等值字符串。 举例,"1111" 和 "33" 就是等值字符串。 相比之下,"123"就不是等值字符串。...规则:给出一个数字字符串s,将字符串分解成一些等值字符串,如果有且仅有一个等值子字符串长度为2,其他的等值子字符串的长度都是3. 如果能够按照上面的规则分解字符串s,就返回真,否则返回假。...子串就是原字符串中连续的字符序列。 示例 1: 输入: s = "000111000" 输出: false 解释: s只能被分解长度为3的等值子字符串。...ct -= 3; } prev = s[i]; } return two==1;//只能有一个长度2的等值字符子串...} }; 0 ms 6.6 MB C++ ---- 我的CSDN博客地址 https://michael.blog.csdn.net/ 长按或扫码关注我的公众号(Michael阿明),一起加油
Q: Write one SQL statement to check if the string composed of value of t ordered by id is a palindrome
已经采用了我们预期指定的索引,并且预估值约是10条左右。...这还仅仅是2000个联系人会话,随着会话数的增多,该值线性增大。...page加载的必经函数前后插入回调函数进行统计,在整个SQL执行完毕后输出该执行过程统计结果。...:1,Table leaf :6,Index embedded:8 ,Index leaf :329 从上述2组log一对比,我们可以很清晰的看到,真正差距就在索引页上,可见拆表前后上述2条SQL,...对于类似字符串等占用较长空间做索引字段的,未来会通过代码扫描直接提示warning,加强各个团队成员在这方面的意识。
找到字符串中所有字母异位词 给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词的子串,返回这些子串的起始索引。不考虑答案输出的顺序。...给你一个整数数组 nums 和一个整数 k ,请你统计并返回 该数组中和为 k 的子数组的个数 。...子数组是数组中元素的连续非空序列。 使用前缀和思想+哈希表 寻找某个区间之和为K dp就是前缀和数组,可以快速得到某一区间的和。...你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 遍历给定数组中的元素,如果队列不为空且当前考察元素大于等于队尾元素,则将队尾元素移除。...此时,队首元素就是该窗口内的最大值。
,来回转换的过程称为”装箱“与”拆箱“:装箱:从基本类型转换为对应的包装类对象。...拆箱:从包装类对象转换为对应的基本类型。...() 去掉字符串前后的空格 public String toUpperCase...public StringBuilder delete(int start, int end) 移除此序列的子字符串中的字符。...public StringBuilder replace(int start, int end, String str)使用给定字符串替换此序列的子字符串中的字符。
SQL 可以写在一行或者多行 关键字不能被缩写也不能分行 各子句一般要分行写。 使用缩进提高语句的可读性。 2. ...运算符 空值 (1)数字和日期使用的算术运算符: + - * / 优先级 乘除的优先级高于加减。 ...空值是无效的,未指定的,未知的或不可预知的值 空值不是空格或者0。...空值的运算: 包含空值的数学表达式的值都为空值 若commission_pct为空,则 12*salary*commission_pct也为空 SELECT last_name, 12*salary...5.字符串 字符串可以是 SELECT 列表中的一个字符,数字,日期。 日期和字符只能在单引号中出现。
SQL 语言的规则与规范SQL 可以写在一行或多行。为了提高可读性,各子句分行写,必要时使用缩进,每条命令以 ; 或 \g 或 \G 结束。关键字不能被缩写也不能分行。...标点符号必须保证所有的 ()、单引号、双引号是成对结束的,必须使用英文状态下的半角输入方式。字符串型和日期时间类型的数据可以使用单引号(' ')表示。...SQL 中的 SELECT 语法的确提供了这个功能,一般来说我们只从一个表中查询数据,通常不需要增加一个固定的常数列,但如果我们想整合不同的数据源,用常数列作为这个表的标记,就需要查询常数。...SELECT NULL + 1, NULL - 1, NULL * 1, NULL > 1, NULL 值不等于空字符串。...空字符串的长度是 0,而空值的长度是空。在 MySQL 中,空值是占用空间的。表结构查询使用 DESCRIBE 或 DESC 命令表示表结构。
2、字段 1)字符串 定长的字符串用char比较好,这样修改的时候不会产生碎片,而且利用率高。相对来说,varchar则用于长度不一致的字段。 2)枚举 对于只有几种值的字段,用枚举的效果更好。...、SQL语句优化 1、尽量用到索引 1)避免在 where 子句中对字段进行 null 值、!...2)避免用子查询,mysql的子查询,内部执行计划器是这样执行的:先查外表再匹配内表,而不是先查内表,当外表的数据很大时,查询速度会非常慢。...1、横向拆表 当数据量太大,且数据有一定的规律,则可以横向分表。...每当有数据修改,主库会将sql语句写入中继日志,然后从库会把日志搬到对应的从库日志,再逐条执行sql。
懒惰型了 #\s*$ //匹配一个字符串结尾的零个或者多个空白字符 分行匹配模式: 启用分行匹配模式的(?m)记号就是一个能够改变其他元字符行为的元字符序列。...分行匹配模式将使得正则表达式引擎把分隔符当做一个字符串分隔符来对待。...在分行模式匹配下,^不仅匹配正常的字符串开头,还将匹配行分隔符(换行符)后面的开始位置;类似地,$不仅匹配正常的字符串结尾,还将匹配行分隔符(换行符)后面的匹配模式 #(?...确保命令内的所有引号成对出现 确保用花括号{}括起动作语句,用()括起条件语句 awk中NF指定的是域的个数,NR指定行数;$NF指定最后一个域的值;$NR指定依次打印一遍行列 匹配符~:为使一域号匹配正则表达式...$0,length()}' grade (其实也可以写在前面的) match(s,r) 测试s是否包含匹配r的字符串 sub(r,s) 用$0中最左边最长的子串代替s substr(
相当于给每个盒子添加了左右margin外边距 4、align-items调整侧轴对齐(垂直对齐) 子盒子如何在父盒子里面垂直对齐(单行) 值 描述 白话文 stretch 默认值。...让子元素的高度拉伸适用父容器(子元素不给高度的前提下) center 项目位于容器的中心。 垂直居中 flex-start 项目位于容器的开头。...垂直对齐结束位置 底对齐 5、flex-wrap控制是否换行 当我们子盒子内容宽度多于父盒子的时候如何处理 值 描述 nowrap 默认值。规定灵活的项目不拆行或不拆列。...不换行,则 收缩(压缩) 显示 强制一行内显示 wrap 规定灵活的项目在必要的时候拆行或拆列。 wrap-reverse 规定灵活的项目在必要的时候拆行或拆列,但是以相反的顺序。...8、order控制子项目的排列顺序,正序方式排序,从小到大 用css 来控制盒子的前后顺序。 用order 就可以 用整数值来定义排列顺序,数值小的排在前面。可以为负值。
在学习SELECT之前我们先来了解下关于它的基本知识点: SQL语言的规则与规范 SQL 可以写在一行或者多行。...为了提高可读性,各子句分行写,必要时使用缩进每条命令以 ; 或 \g 或 \G 结束关键字不能被缩写也不能分行 关于标点符号必须保证所有的()、单引号、双引号是成对结束的必须使用英文状态下的半角输入方式字符串型和日期时间类型的数据可以使用单引号...里面, 空值不等于空字符串。...一个空字符串的长度是 0,而一个空值的长度是空。而且,在 MySQL 里面,空值是占用空间的。 着重号 我们需要保证表中的字段、表名等没有和保留字、数据库系统或常用方法冲突。...SQL 中的 SELECT 语法的确提供了这个功能,一般来说我们只从一个表中查询数据,通常不需要增加一个固定的常数列,但如果我们想整合不同的数据源,用常数列作为这个表的标记,就需要查询常数。
SQL 先说点废话,很久没发文了,整理了下自己当时入门 SQL 的笔记,无论用于入门,回顾,参考查询,应该都是有一定价值的,可以按照目录各取所需。...SQL数据库有很多,MySQL是一种,本文基本都是SQL通用标准,有些标准很不统一的地方就用MySQL的写法了。希望本文帮你快速了解SQL的基本操作和概念。...其他数据库用+或者||拼接字符串。 日期时间处理不同数据库差异较大。...计算所得行数不包括该列值为null的行。 DISTINCT 列名,求不重复的列。...插入部分行时,把要插入的列填入 Customers 括号内,与VALUES内容一一对应,没有提到的列默认NULL或其他默认值。
怎么玩 不会这么玩 a)各种联合查询 b)子查询 c)触发器 d)用户自定义函数 e)“事务”都用的很少 原因:对数据库性能影响极大 拆库后,IN查询怎么玩[ 拆库后,非Partition key的查询怎么玩...拆库后,夸库分页怎么玩?...玩法 (5.0)不这么玩:联合查询,子查询,触发器,自定义函数,事务 (5.1)IN查询:分发MR or 拼装成不同SQL语句 (5.2)非partition key查询:定位一个库 or 分发MR (...保证访问法则 依靠表名、主键值和列名的组合,保证能访问每个数据项。 空值的系统化处理 支持空值(NULL),以系统化的方式处理空值,空值不依赖于数据类型。...统一的数据子语言法则 一个关系数据库系统可以支持几种语言和多种终端使用方式,但必须至少有一种语言,它的语句能够一某种定义良好的语法表示为字符串,并能全面地支持以下所有规则:数据定义、视图定义、数据操作
拆表 对于字段太多的大表,考虑拆表(比如一个表有100多个字段) 对于表中经常不被使用的字段或者存储数据比较多的字段,考虑拆表。...尽量少用 text 类型,非用不可时最好考虑拆表 MySQL语句及索引 如果发现SQL查询比较慢,可以开启慢查询日志进行排查。...,查询条件的值要加''单引号,避免底层类型自动转换 使用 EXPLAIN 分析 SQL 这里对explain的结果进行简单说明: select_type:查询类型 SIMPLE 简单查询 PRIMARY...SQL语句尽可能简单 一条sql只能在一个cpu运算;大语句拆小语句,减少锁时间;一条大sql可以堵死整个库。...对于连续数值,使用 BETWEEN 不用 IN SELECT id FROM t WHERE num BETWEEN 1 AND 5; SQL 语句中 IN 包含的值不应过多 MySQL对于IN做了相应的优化
主要的语句关键字包括 GRANT 、 REVOKE 、 COMMIT 、 ROLLBACK 、 SAVEPOINT 等。 2.SQL语言的规则与规范 2.1 基本规则 SQL 可以写在一行或者多行。...为了提高可读性,各子句分行写,必要时使用缩进 每条命令以 ; 或 \g 或 \G 结束 关键字不能被缩写也不能分行 关于标点符号 必须保证所有的()、单引号、双引号是成对结束的 必须使用英文状态下的半角输入方式...字符串型和日期时间类型的数据可以使用单引号(' ')表示 列的别名,尽量使用双引号(" "),而且不建议省略as 2.2 SQL大小写规范 MySQL 在 Windows 环境下是大小写不敏感的...DISTINCT 其实是对后面所有列名的组合进行去重 3.5 空值参与运算 所有运算符或列值遇到null值,运算的结果都为null 这里你一定要注意,在 MySQL 里面, 空值不等于空字符串。...一个空字符串的长度是 0,而一个空值的长度是空。而且,在 MySQL 里面,空值是占用空间的。 3.6 查询常数 SELECT 查询还可以对常数进行查询。
概述 1 查询表中所有的行与列 2 从表中检索部分行 3 查找空值 4 将空值转换为实际值 5 查找满足多个条件的行 6 从表中检索部分列 7 为列取有意义的名称 8 在 WHERE 子句中引用取别名的列...9 拼接列 使用字符串连接符 用SQL生成SQL 10 在 SELECT 语句中使用条件逻辑 case when 11 限制返回的行数 12 从表中随机返回 n 条记录 13 模糊查询 查出vname...看下面这个例子,返回多个值中第一个不为空的值。...当然了对于拼接列,我们还可以如下使用 使用字符串连接符 用SQL生成SQL select 'truncate table ' || owner || '.' || table_name || '; '...select * from xgj where vname like '_\\BCE%' escape '\'; VNAME ------- _\BCEDF SQL> 对于字符串中包含’%’ 的也一样的方式处理
可以将序表写入指定 sheet,或只写入序表的部分行,或只写入指定的列: =file("e:/scores.xlsx").xlsexport@t(A1,No,Name,Class,Maths) xlsexport...更强的计算能力 SPL 有更丰富的日期和字符串函数、更方便的语法,能有效简化 SQL 和存储过程难以实现的复杂计算。 更丰富的日期和字符串函数。...除了常见的日期增减、截取字符串等函数,SPL 还提供了更丰富的日期和字符串函数,在数量和功能上远远超过了 SQL: 季度增减: elapse@q("2020-02-27",-3) //返回2019-05...true 取子串前面的字符串: substr@l("abCDcdef","cd") //返回abCD 按竖线拆成字符串数组: "aa|bb|cc".split("|") //返回["aa","bb","...cc"] SPL 还支持年份增减、求季度、按正则表达式拆分字符串、拆出 SQL 的 where 或 select 部分、拆出单词、按标记拆 HTML 等大量函数。
领取专属 10元无门槛券
手把手带您无忧上云