CustomizedField 表中有 FieldId(pk),FieldName,FieldType,OrderId 字段 目前有30条数据
CustomerField 表中有 CustomerFieldId(pk),FieldId(fk),CustomerId,FieldValue字段 目前有50万条数据要执行
select distinct f.FieldName,f.FieldType CustomizedField cf inner join CustomerField f on cf.FieldId = f.FieldId order by OrderId
的查询
请问如何来优化查询,
这里主要想问的是 2个表都没有建立索引,是否可以通过建立索引来解决查询效率问题??
在线等。
CustomerField 表中有 CustomerFieldId(pk),FieldId(fk),CustomerId,FieldValue字段 目前有50万条数据要执行
select distinct f.FieldName,f.FieldType CustomizedField cf inner join CustomerField f on cf.FieldId = f.FieldId order by OrderId
的查询
请问如何来优化查询,
这里主要想问的是 2个表都没有建立索引,是否可以通过建立索引来解决查询效率问题??
在线等。
额 错了 应该是
select distinct f.FieldName,f.FieldType CustomizedField f inner join CustomerField cf on cf.FieldId = f.FieldId order by OrderId
去掉之后在 我的电脑上 执行的时间是 5516ms
加上的时候 时间是5125ms
效果差不多 OrderId 加上索引会不会好点 应该加什么样的索引比较好?
你的CustomizedField 表中有 FieldId(pk)是主键,已经是聚集索引了,只有建唯一索引!
FieldName和FieldType建唯一索引!
这样会快点!