范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

Java高频面试题每日三连问?Day7数据库篇

  问题导读
  一、哪些情况下索引会失效?
  二、说一下varchar与char的区别吧
  三、做过SQL优化吗?请举几个例子说明一下一、哪些情况下索引会失效?正经回答:
  1、在字段开头模糊查询
  如下:SELECT * FROM t WHERE username LIKE "%陈%"
  优化方式:尽量在字段后面使用模糊查询。SELECT * FROM t WHERE username LIKE "陈%"
  如果需求是要在前面使用模糊查询:使用MySQL内置函数INSTR(str,substr) 来匹配,作用类似于java中的indexOf(),查询字符串出现的角标位置,可参阅《MySQL模糊查询用法大全(正则、通配符、内置函数等)》使用FullText全文索引,用match against 检索数据量较大的情况,建议引用ElasticSearch、solr,亿级数据量检索速度秒级当表数据量较少(几千条儿那种),别整花里胡哨的,直接用like ‘%xx%’。
  2、使用 or
  如下:SELECT * FROM t WHERE id = 1 OR id = 3
  优化方式:可以用union代替or。如下:SELECT * FROM t WHERE id = 1    UNION SELECT * FROM t WHERE id = 3
  3、进行null值判断
  如下:SELECT * FROM t WHERE score IS NULL
  优化方式:可以给字段添加默认值0,对0值进行判断。如下:SELECT * FROM t WHERE score = 0
  分享一下,你的朋友可能正需要它!!!
  4、在where条件中=号的左侧进行表达式、函数操作
  可以将表达式、函数操作移动到等号右侧。如下:-- 全表扫描 SELECT * FROM T WHERE score/10 = 9 -- 走索引 SELECT * FROM T WHERE score = 10*9
  5、使用where 1=1的条件
  如下:SELECT username, age, sex FROM T WHERE 1=1
  优化方式:用代码拼装sql时进行判断,没 where 条件就去掉 where,有where条件就加 and。
  6、查询条件用 <> 或者 !=使用索引列作为条件进行查询时,需要避免使用<>或者!=等判断条件。  如确实业务需要,使用到不等于符号,需要在重新评估索引建立,避免在此字段上建立索引,改由查询条件中其他索引字段代替。
  7、where条件仅包含复合索引非前置列
  如下:复合(联合)索引包含key_part1,key_part2,key_part3三列,但SQL语句没有包含索引前置列"key_part1",按照MySQL联合索引的最左匹配原则,不会走联合索引。select col1 from table where key_part2=1 and key_part3=2
  8、隐式类型转换造成不使用索引
  如下SQL语句由于索引对列类型为varchar,但给定的值为数值,涉及隐式类型转换,造成不能正确走索引。select col1 from table where col_varchar=123;
  9、order by 条件要与where中条件一致,否则order by不会利用索引进行排序-- 不走age索引 SELECT * FROM t order by age; -- 走age索引 SELECT * FROM t where age > 0 order by age;
  对于上面的语句,数据库的处理顺序是:
  第一步:根据where条件和统计信息生成执行计划,得到数据。
  第二步:将得到的数据排序。当执行处理数据(order by)时,数据库会先查看第一步的执行计划,看order by 的字段是否在执行计划中利用了索引。如果是,则可以利用索引顺序而直接取得已经排好序的数据。如果不是,则重新进行排序操作。
  第三步:返回排序后的数据。
  当order by 中的字段出现在where条件中时,才会利用索引而不再二次排序,更准确的说,order by 中的字段在执行计划中利用了索引时,不用排序操作。
  这个结论不仅对order by有效,对其他需要排序的操作也有效。比如group by 、union 、distinct等。二、说一下varchar与char的区别吧正经回答:
  charchar表示定长字符串,长度是固定的;如果插入数据的长度小于char的固定长度时,则用空格填充;因为长度固定,所以存取速度要比varchar快很多,甚至能快50%,但正因为其长度固定,所以会占据多余的空间,是空间换时间的做法;对于char来说,最多能存放的字符个数为255,和编码无关
  varcharvarchar表示可变长字符串,长度是可变的;插入的数据是多长,就按照多长来存储;varchar在存取方面与char相反,它存取慢,因为长度不固定,但正因如此,不占据多余的空间,是时间换空间的做法;对于varchar来说,最多能存放的字符个数为65532三、做过SQL优化吗?几个请举例子说明一下正经回答:
  重复查询相同的数据:可以缓存数据,下次直接读取缓存
  一个复杂查询还是多个简单查询
  MySQL内部每秒能扫描内存中上百万行数据,相比之下,响应数据给客户端就要慢得多
  使用尽可能小的查询是好的,但是有时将一个大的查询分解为多个小的查询是很有必要的。
  切分查询
  将一个大的查询分为多个小的相同的查询
  一次性删除1000万的数据要比一次删除1万,暂停一会的方案更加损耗服务器开销。
  分解关联查询,让缓存的效率更高。
  UNION ALL的效率高于UNION
  每日小结今天我们复习了面试中常考的数据库三个问题,你做到心中有数了么?
  对了,**如果你的朋友也在准备面试,请将这个系列扔给他,如果他认真对待,肯定会感谢你的!!**好了,今天就到这里,学废了的同学,`记得三连,也会给我继续更新的动力。`

中央空调主机的日常维护方法中央空调为建筑物输送冷量,用于人们日常的空气调节,这种大型的设备,都要做好日常的维护和保养,只有科学的维保,才能稳定的运行。主机日常维保注意事项。主机是制冷系统动力核心,氟里昂从低特灵中央空调维护保养技巧冷水机组需要定期维护保养,主机的表面积尘和残留物质的清理清扫,各螺丝螺帽及震动部位的螺丝螺帽要加固结实,防止热膨冷缩造成的松动,避免事故的发生。特灵空调维护方法。特灵中央空调需要定从养宠到TCGRPG,国产的区块链游戏有哪些?区块链应用是当下游戏市场关注的实时热点,一些游戏开发商早就开始布局调整。到迄今为止,早就有六大制造商的七款国产区块链游戏面世,包括网易网游的招财猫再到红米手机的加密兔。那么,这类国从0xGames停运说起,谈谈区块链游戏圈里的恶性循环世界上没有不散场之酒席,所有的好事都可能出現结束的那一天。而对于0xGames区块链游戏工作室来讲,这一切早出现因为0xGames突然宣布关闭!对于区块链游戏工作室0xGames来国产的区块链游戏有哪些?17年年底,加密猫的DAPP游戏问世,快速激起了很多游戏玩家的好奇心,一些DAPP游戏玩家的加密猫居然售出了17万美元的高价,进而刮起了一股养小猫风潮。12月4日,这款以太坊DAP用了一个星期后,我们来谈谈iPhone12到底值不值与往年iPhone上市一样,今年随着iPhone12的上市,媒体和舆论开始了新一轮的嘲讽,当然这与往年一样,这丝毫不影响iPhone12成为最畅销的手机。为了能准确地评估iPhon双雄对决iPhone12和华为Mate40Pro拍照谁更强iPhone12和华为的Mate40Pro都已经上市两个月了,两台2020在手机行业最具影响力的机型经过多次系统升级,目前整体系统已经都已稳定。在拍照方面,两款机型都在上一代产品上华为P50无5G,4G可用5G不行,期待翻身华为P50Pro搭载6。6120Hz柔性OLED曲面屏,P50为6。5寸90Hz屏幕,拥有300Hz触控采样率,支持10。7亿色。机身漂亮高端商务,奈何4G,似乎再退步,但是也是无统一游戏巨头纷纷入场,区块链游戏到底有什么优点?事物的兴衰都有它必然的原因。区块链游戏自问世以来便面对着诸多争议,但不论是区块链技术的热度,还是游戏市场自身的备受关注,区块链游戏能引得众人瞩目的原因必定是具有某些传统游戏所缺乏的DApp是什么意思?有什么用途?什么叫DApp?App大家都了解是手机客户端运行的程序,然而DApp是什么意思估计就让很多人一脸懵了。首先App是application的通称。因此dapp便是Dapp,d是英语单传统游戏行业难以自我纠错,区块链游戏恐成破局关键近20年至今,游戏行业伴随着技术性的发展关键,经历了PC单机手游PC端游网页游戏和移动游戏,如今又有了区块链游戏。每一次的迭代更新都带来了超出百亿元量级的领域新增加量,为游戏行业带
顶尖屏幕,性能澎湃,iQOO8Pro带来极致电竞游戏体验11。11正处于火热预售阶段,许多用户都想在这个全民购物的节日换手机,享受一波节日福利。iQOO今年11。11购机福利满满,其中iQOO8Pro作为iQOO数字系列的旗舰机竞争力十iQOOZ5x全面评测千元手机如何实现弯道超车?金融学上曾认为,进入秋收时令以后,由于农业收获的原因,人们的收支消费心理容易被心情所带动,特别是秋季的时候,家庭消费明显增加,故有金九银十之说。对于手机行业而言同样如此,大多数的手买耳机不带降噪等于买手机不带拍照FreeBuds4让你半入耳也降噪近些年来真无线耳机的发展尤为迅猛,得益于摆脱了传统耳机的线材束缚,真无线耳机带来了更加便捷和快速的佩戴方式,深受消费者的追捧。特别是在如今噪音横行的前提下,真无线耳机的主动降噪功能双十一最值得入的大屏神器TCLC12量子点MiniLED智屏前两天,微博账号TCL智屏发布了一条很有趣的视频!剧情大概是一个小女孩深夜打开智屏,连上蓝牙耳机在家蹦迪,太可爱了!可惜最后还是被爸爸妈妈抓了个现行!原来,这台智屏的蓝牙功能支持一苦于买主机没有李佳琦的excel?教你双十一拿下漫威联名超值主机今年双十一,想必有需求的诸位早已做好基础攻略,磨刀霍霍向羊毛了。今年的十一首轮预售活动也比去年提前了一天,而且时间选择在晚上8点,可以说是相当友好了。不过作为一个电竞女孩,我每年都2021OPPO开发者大会召开,OPPO游戏全面赋能平台开发者10月27日,以开放互融致善创新为主题的2021OPPO开发者大会(ODC21)在上海世博中心正式落幕。作为一家生态型科技公司,OPPO在游戏专场中向外界展示了自身在构建平台生态推中兴AX5400Pro路由器即将发布,除了自研12核芯片外还有什么?双十一购物季,可以说是各种新品接踵而至,除了智能手机之外,无线路由器也是很热闹的,在11月1日,中兴又将推出一款全新无线路由器中兴AX5400Pro。随着发布会的接近,中兴官方微博荣耀平板双11开门红,安卓阵营平板统治力开始显现双11已经拉开帷幕,平板电脑的战报十分值得关注。其中荣耀平板的战报引人注目,荣耀平板V7系列获京东11月1日全天安卓平板品类销量销售额双冠军,同时获得天猫开门红全天安卓平板品类销量Amphion芬兰之声亮相2021年英国音响展这应该是英国自去年疫情以来第一场音响展,可说是具有相当的代表性,也许也是2021年的唯一一场,本月原本还有一场音响展,不过上个月已宣告取消。英国很大,因此每一年会有几场音响展,UK展会预告爱威影音亮相第16届深圳音响耳机展作为华南地区极具规模和影响力的影音行业展,2021年第16届深圳音响耳机展将于10月15日17日在深圳中洲圣廷苑酒店盛大举行。爱威影音展厅在3F的沁冬厅,本次展会我们携旗下重量级产新音响购买的十要十不要(下)本文是源自在二年多前写的一个贴子叫音响购买的十要十不要,算是个人的一个看法和心得,给广大的选择音响的朋友一些建议。一不小心,写成了十五要和十五不要。因此一直想精减成十个呢,嘿嘿。另