InnoDB在大型数据库上处理具有多连接操作的select语句有多好?

时间:2013-03-11 01:38:28

标签: mysql innodb myisam

我正在为大量使用的应用程序设计一个大型数据库。该应用程序将在销售时有许多插入/更新,但我会有更多的选择。我将做很多涉及多(3-6)内连接的select语句。

innoDB如何处理这些复杂的select语句。我也将在select中使用大量的datetime子句作为过滤器。

因此对于这样的应用程序来说,InnoDB会比MyIsam更好吗?或者我应该坚持使用旧的MyIsam方法吗?

这是一个select语句的例子

    SELECT act.subject, act.attempts, in.industry_name, zn.zone_name, cc.code_id, DATE_FORMAT(act.due_on, "%m-%d-%Y %T") AS due_on FROM activities AS act
    INNER JOIN industries AS in ON in.industry_id = act.industry_id
    INNER JOIN zones AS zn ON zn.zone_id = act.zone_id
    INNER JOIN call_codes AS cc ON cc.code_id = act.code_id
    WHERE act.due_on BETWEEN (CURRDATE() + ' 00:00:00')  AND (CURRDATE() + ' 23:59:59')
    ORDER BY act.due_on

**This is a summery of fields description**
The following field's  type are CHAR(50)
act.subject
in.industry_name
zn.zone_name

the following field's type are INT(10) unsigned and they are all foreign keys
cc.code_id
in.industry_id
zn.zone_id

the following field's type are INT(10) unsigned and they all are indexed
act.industry_id
act.zone_id
act.code_id


this field is a date time
act.due_on

我还应该注意,我的活动表有300万条记录。此外,我将使用COUNT(),MAX(),MIX(),SUM(),AVG()进行大量报告,然后再进行其他结束.....

0 个答案:

没有答案