我正在为大量使用的应用程序设计一个大型数据库。该应用程序将在销售时有许多插入/更新,但我会有更多的选择。我将做很多涉及多(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()进行大量报告,然后再进行其他结束.....