面试
chunguang.yao
我在github,在这里我会分享一些学习笔记和项目
https://github.com/yaochunguang
展开
-
SQL优化(面试题)
最近在面试的时候经常被问到SQL优化,总结如下: 1、在表中建立索引,优先考虑where、group by使用到的字段。 2、尽量避免使用select *,返回无用的字段会降低查询效率。如下: SELECT * FROM t 优化方式:使用具体的字段代替*,只返回使用到的字段。 3、尽量避免使用in 和not in,会导致数据库引擎放弃索引进行全表扫描。如下: SELECT...原创 2019-06-13 22:21:12 · 17904 阅读 · 1 评论 -
悲观锁和乐观锁(面试题)
悲观锁 总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁(共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其它线程)。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。 乐观锁 总是假设最好的情况,每次去拿数据的时候都认为别人不会修改,所以不...原创 2019-06-13 23:32:06 · 2151 阅读 · 0 评论