mysql通过创建新表来提高性能

时间:2011-05-21 07:17:42

标签: mysql

下面的代码是可行的,但是有时需要运行php代码停止运行,但它可以很好地使用mysql图形工具(因为它可以等待)。是否有任何方法使其更快我在某些列使用索引它有帮助是否有任何方法来创建表我如果我创建表我认为它会提高性能但这个表必须更新可能每周一次是什么好的做法请建议

SELECT member.own, member.provincecode, province.PROVINCE_NAME, member.amphurecode,
    amphur.AMPHUR_NAME, member.Sname, member.Ssurname, member.Hno, member.Moo,
    member.Sex, member.tambol, member.dateofbirth, member.migratedate,
    Year( Current_Date( ) ) -  Year( member.dateofbirth ) AS y, 
    Year( Current_Date( ) ) - Year( member.migratedate ) AS m
FROM member
LEFT JOIN amphur ON ( member.amphurecode
COLLATE utf8_general_ci = amphur.AMPHUR_CODE )
LEFT JOIN province ON member.provincecode
COLLATE utf8_general_ci = province.PROVINCE_CODE

1 个答案:

答案 0 :(得分:1)

整理是一项昂贵的操作。因此,假设member的行数多于province,请尝试使用较少的行整理表格:

LEFT JOIN province ON member.provincecode
= province.PROVINCE_CODE COLLATE <collation of member.provincecode>

为所有表中的所有列提供相同的排序规则会更好。