请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

数据库sql问题

老师,我们在写sql的时候,有时候会查询 select * ,据说select * 会加大数据的传输量,和数据库内存使用量。老师如果我想界面化的看一下 select * from user 相对于 select name from user,两者的数据传输的差距有多大,该如何操作啊。 因为有人跟我说select * 对db查询的影响并不是很大,所以我想看看,到底有多大?

正在回答

1回答

select *的主要问题不是数据量的问题,如果有索引并且查询的数据都在索引里面,那么可以不用回表,而select *几乎肯定得回表

0 回复 有任何疑惑可以回复我~
  • 提问者 qq_红_14 #1
    老师,mysql的数据都是和聚簇索引在一起的。如果select 查询的不是主键值的话,都是要回表的吧。
    回复 有任何疑惑可以回复我~ 2020-07-28 16:11:09
  • 提问者 qq_红_14 #2
    老师,就是说 select name from user,如果给name加了索引的话,就不需要走聚簇索引,直接走非聚簇索引就可以拿到name的数据。而 select name,sex from user,如果只是给name 加了索引的话,就还是要走聚簇索引。
    回复 有任何疑惑可以回复我~ 2020-07-28 16:27:36
  • 提问者 qq_红_14 #3
    非常感谢!
    回复 有任何疑惑可以回复我~ 2020-07-28 16:29:52
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信