首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

DBA-MySql面试问题及答案-

18.如果一个表有一定义为TIMESTAMP,将发生什么? 19.设置为AUTO INCREMENT时,如果在表达到最大,会发生什么情况?...覆盖索引指的是在一次查询如果一个索引包含或者说覆盖所有需要查询的字段的,我们就称之为覆盖索引,不再需要回表查询。...19.设置为AUTO INCREMENT时,如果在表达到最大,会发生什么情况? 它会停止递增,任何进一步的插入都将产生错误,因为密钥已被使用。...CURRDATE(), CURRTIME()- 返回当前日期时间。 NOW() – 将当前日期和时间作为一个返回。...因此,在这种情况,能被存储在salary的范围是-9999999.99到9999999.99。 35.mysql有关权限的表都有哪几个?

22320

Apache Hudi 0.14.0版本重磅发布!

此策略确定当正在摄取的传入记录已存在于存储时采取的操作。此配置的可用如下: • none:不采取任何特定操作,如果传入记录包含重复项,则允许 Hudi 表存在重复项。...如果未提供特定配置,则将采用较新配置的默认。强烈鼓励用户迁移到使用这些较新的配置。...此增强功能使 MERGE INTO JOIN 子句能够引用 Hudi 表连接条件的任何数据,其中主键由 Hudi 本身生成。但是在用户配置主记录键的情况,连接条件仍然需要用户指定的主键字段。...例如,如果在 t0 到 t2 的增量查询范围内,在 t1 时刻检测到间隙,则查询将仅显示 t0 到 t1 之间的结果,不会失败。...已知回退 在Hudi 0.14.0,当查询使用ComplexKeyGeneratorCustomKeyGenerator的表时,分区以字符串形式返回

1.6K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    使用Power Query时的最佳做

    这也是筛选出与案例无关的任何数据的最佳做法。 这样,你便能更好地关注手头的任务,只需显示数据预览部分相关的数据。可以使用自动筛选菜单来显示中找到的的不同列表,以选择要保留筛选掉的。...还可以使用搜索栏来帮助查找。还可以利用特定于类型的筛选器,例如日期日期时间甚至日期时区 的上 一个筛选器。...这些特定于类型的筛选器可帮助你创建动态筛选器,该筛选器将始终检索前 x 秒、分钟、小时、天、周、月、季度年份的数据,如下图所示。 备注若要详细了解如何基于筛选数据,请参阅 按筛选。...上次执行昂贵的操作某些操作需要读取完整的数据源才能返回任何结果,因此在Power Query 编辑器预览速度较慢。 例如,如果执行排序,则前几行可能位于源数据末尾。...使用正确的数据类型Power Query的一些功能与所选的数据类型相关。 例如,选择日期时,“添加”菜单的“日期和时间”的可用选项将可用。 但如果没有数据类型集,则这些选项将灰显。

    3.5K10

    嘀~正则表达式快速上手指南(下篇)

    日期字符串来举例: ? 如果使用 * 我们将匹配到大于等于零个的结果, + 匹配大于等于一个的结果。参照以上示例,我们输出了两种不同的结果,它们之间存在非常大的差异。...比如, 如果需要在字符串查找 "a", "b", "c" , 可以使用 [abc] 作为模式. 上文提到过的模式也适用。[\w\s] 用于查找字母、数字空格。...也可以精确地查找。例如,查找特定域名发来的邮件。但是,我们需要先学习一种新的正则表达式来完成精确查询工作。 管道符号, |, 用于查找位于它两边的任意字符。 如, a|b查找 a b。...现在我们可以使用 | 符号查找特定域名发送来的email。 ? 这里我们使用了一行超长的代码。由内及外剖析它。..." 的邮件发送者,接下来 ['email_body'].values 用来查找邮件正文的相同行的,最后输出该

    4K10

    MySQL 技术非懂不可

    而且不会出现某些特定情况的存储过程、function、trigger的调用和触发无法被正确复制的问题。缺点是会产生大量的日志,尤其是alter table的时候会让日志暴涨。...ref 显示索引的哪一常量被用于查找索引列上的。 rows 根据表统计信息及索引选用情况,大致估算出找到所需的记录所需要读取的行数,越大越不好。...覆盖索引(Covering Index) :也叫索引覆盖,就是select 的数据只用索引中就能够取得,不必读取数据行,MySQL可以利用索引返回select 列表的字段,不必根据索引再次读取数据文件...update; 是一个范围条件的检索,InnoDB不仅会对符合条件的empid为101的记录加锁,也会对empid大于101(这些记录并不存在)的“间隙”加锁。...对于上面的例子,要是不使用间隙锁,如果其他事务插入了empid大于100的任何记录,那么本事务如果再次执行上述语句,就会发生幻读;(2)为了满足其恢复和复制的需要。

    76030

    InnoDB解决幻读的方案--LBCC&MVCC

    间隙锁有一个比较致命的弱点,就是当锁定一个范围键值之后,即使某些不存在的键值也会被无辜的锁定,造成在锁定的时候无法插入锁定键值范围内的任何数据。在某些场景这可能会对性能造成很大的危害。...可以使用sql语句select ... for update来开启锁,select语句为范围查询,匹配字段为索引项,且有数据返回;或者select语句为等值查询,匹配字段为索引项,不管有没有数据返回...如果范围查询唯一索引查询非唯一索引且命中记录,则锁定所有命中行的临键锁 ,并同时锁定最大记录行下一个区间的间隙锁。 如果范围查询索引且没有命中记录,退化为临近结点的间隙锁(包括结点也被锁定)。...MVCC的实现依赖于:三个隐藏字段、Undo log和Read View,其核心思想就是:只能查找事务id小于等于当前事务ID的行;只能查找删除时间大于等于当前事务ID的行,未删除的行。...接下来让我们源码级别来分析MVCC。 隐藏 MySQL中会为每一行记录生成隐藏,接下来就让我们了解一这几个隐藏吧。

    75420

    一篇文章彻底搞懂Mysql事务相关原理

    例如, SELECT c1 FROM t WHERE c1 = 10 FOR UPDATE; 可以防止插入,更新删除行,其中的任何其它交易t.c1是 10。...在最简单的情况如果一个事务正在向表插入,则任何其他事务都必须等待自己在该表中进行插入,以便第一个事务插入的行接收连续的主键值。...如果 InnoDB自动生成聚集索引,该索引包含行ID。否则,该 DB_ROW_ID不会出现在任何索引。 回滚段的撤消日志分为插入和更新撤消日志。...不是索引结构返回,而是InnoDB在聚集索引查找记录。...如果找不到匹配的记录,则避免聚集索引查找如果找到了匹配的记录,即使在删除标记的记录,也要在 InnoDB聚簇索引查找记录。

    81110

    sql学习

    在SQL,可使用以下通配符: 通配符 描述 % 替代一个多个字符 _ 仅代替一个字符 [charlist} 字符任何单一字符 [^charlist]或者[!...如果对单个定义CHECK约束,则该允许特定如果对一个表定义CHECK约束,那么此约束会在特定进行限制。...DEFAULT 用于向插入默认如果没有规定其他的,就添加默认。 SQL CREATE INDEX语句 用于在表创建索引,在不读取整个表的情况,使用索引可以更快的查找数据。...() 返回两个日期之间的时间 CONVERT() 用不同的格式显示日期时间 SQL NULL NULL是遗漏的未知数据,默认的,表的可以存放NULL。...MAX()和MIN() 返回的最大和最小,NULL不包括在计算,可以用于文本,获得按照字母顺序排列的最高最低。 SUM()函数 返回数值的总数。

    4.7K30

    InnoDB数据锁–第2.5部分“锁”(深入研究)

    Performance_schema仅使用来自缓冲池的数据,不使用来自磁盘的数据,如果它无法在其中找到页面,不会尝试磁盘获取数据,而是在LOCK_DATA中报告NULL。...我看到的主要好处是在常见的情况(当事务需要在扫描期间锁定间隙和记录时),它只需要一个内存的对象即可,不是两个,这不仅节省了空间,而且需要更少的内存查找以及对列表的单个对象使用快速路径。...实际上,InnoDB确实在每个二级索引条目中存储了主键的(示例的x),因此在索引为y查找x的并不重要。...因此,您现在必须进入主索引并加载包含该记录的页,以便了解该记录的heap_no。 另一种方法是确保无论使用哪个索引来查找x = 1的行,它的锁将被发现,不需要查阅任何其他索引。...在这种情况,我们也执行隐式到显式的转换吗?考虑到SELECT不应修改任何行,因此不应将其trx_id放在行页面标题中,这似乎是不可信的,因此没有任何痕迹可以推断出隐式锁。 也许我们发现了一个错误?

    1.3K10

    通宵翻译Pandas官方文档,写了这份Excel万字肝货操作!

    索引也是持久的,所以如果你对 DataFrame 的行重新排序,特定行的标签不会改变。 5. 副本与就地操作 大多数 Pandas 操作返回 Series/DataFrame 的副本。...If/then逻辑 假设我们想要根据 total_bill 是小于还是大于 10 美元,来创建一个具有低和高。 在Excel电子表格,可以使用条件公式进行逻辑比较。...; 如果匹配多行,则每个匹配都会有一行,不仅仅是第一行; 它将包括查找的所有不仅仅是单个指定的; 它支持更复杂的连接操作; 其他注意事项 1....填充柄 在一组特定的单元格按照设定的模式创建一系列数字。在电子表格,这将在输入第一个数字后通过 shift+drag 通过输入前两个三个然后拖动来完成。...查找和替换 Excel 查找对话框将您带到匹配的单元格。在 Pandas ,这个操作一般是通过条件表达式一次对整个 DataFrame 完成。

    19.5K20

    mysql基础&高频面试题

    日期 TIME 时间持续时间 HH:MM:SS 日期 YEAR 年份 YYYY 日期 DATETIME 混合日期和时间 YYYY-MM-DD HH:MM:SS 日期 TIMESTAMP 混合日期和时间...2.Having是一个过滤声明,是在查询返回结果集以后对查询结果进行的过滤操作,在Having可以使用聚合函数。...在查询过程聚合语句(sum,min,max,avg,count)要比having子句优先执行。where子句在查询过程执行优先级高于聚合语句。...Mysql的if函数 IF函数根据条件的结果为truefalse,返回第一个第二个 SELECT IF(500<1000, 5, 10); SELECT IF(STRCMP("hello",...5、OR引起的索引失效 SELECT * FROM user WHERE name = '张三' OR height = '175'; OR导致索引是在特定情况的,并不是所有的OR都是使索引失效,如果

    64930

    MySQL入门必须知道的知识点!

    水平分片就是数据角度将一个表的数据拆分到不同的库,这样可以从根本上解决数据量过大造成的查询效率低的问题。 有非常多的分片策略,比如:取模、按时间、按枚举。...执行计划就是sql的执行查询的顺序,以及如何使用索引查询,返回的结果集的行数 EXPLAIN SELECT * from A where X=? and Y=?...id越大执行优先级越高越先执行,id相同则从上往下执行,id为NULL最后执行。 2. select_type表示查询每个select子句的类型。...) 不损失精确性的情况,长度越短越好 8、ref:与索引的比较,表示上述表的连接匹配条件,即哪些常量被用于查找索引列上的 9、rows:估算出结果集行数,表示MySQL根据表统计信息及索引选用情况...索引用来快速的寻找那些就有特定的记录,如果没有索引,一般来说执行查询时遍历整张表。

    54500

    你需要的Excel常用函数都在这里!

    Logical_test 逻辑表达式,如判断A2点是否大于A1的,本参数可以使用任何比较运算符。也可以使用函数的返回,如用and函数 的返回作为第一参数。...如: =IFS(A2>89,"A",A2>79,"B",A2>69,"C",A2>59,"D",TRUE,"F") 也即如果(A2 大于 89,则返回"A",如果 A2 大于 79,则返回"B"并以此类推...在其参数组任何一个参数逻辑为True,返回True;只要有一个参数的逻辑为假,即返回False。...如果查找实际的问号星号,请在字符前键入波形符~ 不区分大小写。 如果条件参数是对空单元格的引用,COUNTIFS 会将该单元格的视为0。 例:统计迟到和旷课次数。...COLUMN() 引用的数据 HLOOKUP() 水平方向查找 推荐阅读 ?

    4K32

    数据库两大必备神器:索引和锁底层原理是什么!

    所在的页内中查找相应的记录 由于不是根据主键查询,只能遍历所在页的单链表了 很明显,在数据量很大的情况这样查找会很慢!...在创建多索引也涉及到了一种特殊的索引-->覆盖索引 我们前面知道了,如果不是聚集索引,叶子节点存储的是主键+ 最终还是要“回表”,也就是要通过主键再查找一次。...4、间隙锁GAP 当我们用范围条件检索数据不是相等条件检索数据,并请求共享排他锁时,InnoDB会给符合范围条件的已有数据记录的索引项加锁;对于键值在条件范围内但并不存在的记录,叫做“间隙(GAP)...where empid > 100 for update; 上面是一个范围查询,InnoDB不仅会对符合条件的empid为101的记录加锁,也会对empid大于101(这些记录并不存在)的“间隙”加锁...现在我们大多数使用MySQL都是使用InnoDB,InnoDB支持行锁: 共享锁--读锁--S锁 排它锁--写锁--X锁 在默认的情况,select是不加任何行锁的~事务可以通过以下语句显示给记录集加共享锁排他锁

    1.8K40

    MYSQL 那点破事!索引、SQL调优、事务、B+树、分表 ....

    什么是间隙锁? 答案:间隙锁是可重复读级别下才会有的锁,mysql会帮我们生成了若干左开右闭的区间,结合MVCC和间隙锁可以解决幻读问题。 如何避免死锁?...如 select … for update 语句,如果是在事务里(运行了 start transaction 设置了autocommit 等于0),那么就会锁定所查找到的记录。...唯一索引:索引必须唯一,但允许有空 复合索引:多组成一个索引,专门用于组合搜索,其效率大于索引合并 聚簇索引:也称为主键索引,是一种数据存储方式。...如果sql还要返回除了索引的其他字段信息,需要回表,第一次索引一般是顺序IO,回表的操作属于随机IO。回表的次数越多,性能越差。此时我们推荐覆盖索引 什么是覆盖索引和回表?...答案: 1、覆盖索引,指的是在一次查询,一个索引包含所有需要查询的字段的,可能是返回where条件 select buyer_id from order where money>100 假如我们创建了一个

    64910

    oracle基础|oracle排序用法|order by用法|where用法

    升序排序的时候,空放在最后 降序排序的时候,空放在最前面的 如果降序的时候,null在全前面,你不想要null在前面,可以加上null last eg:order by column null...4) 所有字符串和日期要用单引号括起来,数值不需要单引号。 日期在Oracle里有特定的格式,’DD-MON-YY’(具体看日期的显示格式), 否则作为一个字符串。...= ^= 需求:查找工资大于1000的所有员工的last_name和工资。...where dept_id45 order by dept_id; 2》sql比较操作符 between and:在什么范围之内 in(list):在一个列表 like:模糊查询,即不是精确的的时候使用...is null:对null操作特定义的操作符,不能使用= 3》逻辑操作符 当条件有多个的时候使用 and:且逻辑 or:逻辑 注意:and逻辑比or逻辑要高 not:非逻辑 4) 需求: 1.查找员工

    3.5K10

    MySQL 三万字精华总结 + 面试100 问,吊打面试官绰绰有余(收藏系列)

    ,不必读取数据行,MySQL可以利用索引返回select列表的字段,不必根据索引再次读取数据文件,换句话说查询要被所建的索引覆盖。...在不损失精确性的情况,长度越短越好 key_len显示的为索引字段的最大可能长度,并非实际使用长度,即key_len是根据表定义计算得,不是通过表内检索出的 ref(显示索引的哪一被使用了,如果可能的话...哪些常量被用于查找索引列上的) rows(根据表统计信息及索引选用情况,大致估算找到所需的记录所需要读取的行数) Extra(包含不适合在其他显示但十分重要的额外信息) using filesort...它们的主要区别在于,LIST分区每个分区的定义和选择是基于某从属于一个列表集中的一个RANGE分区是从属于一个连续区间的集合。...HASH分区:基于用户定义的表达式的返回来进行选择的分区,该表达式使用将要插入到表的这些行的进行计算。这个函数可以包含MySQL 中有效的、产生非负整数值的任何表达式。

    33931

    MySQL 三万字精华总结 + 面试100 问,吊打面试官绰绰有余

    ,不必读取数据行,MySQL可以利用索引返回select列表的字段,不必根据索引再次读取数据文件,换句话说查询要被所建的索引覆盖。...在不损失精确性的情况,长度越短越好 key_len显示的为索引字段的最大可能长度,并非实际使用长度,即key_len是根据表定义计算得,不是通过表内检索出的 ref(显示索引的哪一被使用了,如果可能的话...哪些常量被用于查找索引列上的) rows(根据表统计信息及索引选用情况,大致估算找到所需的记录所需要读取的行数) Extra(包含不适合在其他显示但十分重要的额外信息) using filesort...它们的主要区别在于,LIST分区每个分区的定义和选择是基于某从属于一个列表集中的一个RANGE分区是从属于一个连续区间的集合。...HASH分区:基于用户定义的表达式的返回来进行选择的分区,该表达式使用将要插入到表的这些行的进行计算。这个函数可以包含MySQL 中有效的、产生非负整数值的任何表达式。

    38650

    70个NumPy练习:在Python下一举搞定机器学习矩阵运算

    设置dtype = None,则会返回一维元组数组。 26.如何从一维元组数组中提取特定? 难度:2 问题:从上一个问题中导入的一维iris数组中提取species文本。...难度:2 问题:在iris_2d的sepallength(第1查找缺失的数量和位置。 答案: 34.如何根据两个多个条件过滤一个numpy数组?...输入: 答案: 46.如何找到首次出现的大于给定的位置? 难度:2 问题:查找在iris数据集的第4花瓣宽度第一次出现值大于1.0的位置。...答案: 47.如何将所有大于给定替换为给定的cutoff? 难度:2 问题:数组a,替换大于30包括30且小于10到10的所有。...输入: 答案: 63.如何在一维数组中找到所有局部最大峰值)? 难度:4 问题:在一维numpy数组a查找所有峰值。峰值是两侧较小包围的点。

    20.7K42
    领券