mysql优化 - 数据库设计原则中字段的位置对数据库性能有影响吗

查看:191
本文介绍了mysql优化 - 数据库设计原则中字段的位置对数据库性能有影响吗的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

例如:table_test包含cus_id(客户id),bill_id(单据记录)2个字段
分别对应客户表和单据记录表的主键,客户表是小表,bill表是大表。

想问的是

1、设计的时候cus_id,bill_id在表中第一和第二的位置摆放对性能有区别吗?
2、select cus_id,bill_id from table_test 和select bill_id,cus_id from table_test
这2句性能上会有区别吗?
3、select cus_id,bill_id from table_test,cus,bill where table_test.cus_id = cus.cus_id and table_test.bill_id = bill.bill_id
这句的where条件的摆放问题对性能造成的影响。

谢谢高玩啦!

解决方案

  1. 摆放位置无任何影响,但是where的字段有无索引还是有影响的,按照惯例,顺序一般如下:

    pk varchar integer text timestamp
    pk integer varchar text timestamp

  2. 这两句没任何区别

  3. where 没影响,但是你不建议做from table1,table2,table3,因为这样对性能影响很大,为什么不做INNER JOIN 或者 分别查询出来之后 使用后台语言合并?

这篇关于mysql优化 - 数据库设计原则中字段的位置对数据库性能有影响吗的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆