表中的Mysql时间戳字段使SELECT查询变慢

时间:2013-10-15 12:53:12

标签: mysql mysql-workbench

我正在使用带有300k行的Inno db表(称为test),其中包含以下字段:

id(int), sn(int), ts(timestamp), note(text), error_id(int)

索引为idsnts

SELECT ts FROM test LIMIT 0, 100收视率为0.3-0.35秒 其他一切,如SELECT id FROM test LIMIT 0,100需要0.04秒。

仅在选择*ts时,SELECT需要花费大量时间才能完成。
你知道为什么会发生这种情况(通过ts执行SELECT比其他人多10倍的时间吗?)

真实的桌子:

CREATE TABLE `production_list_log` (<br/>
  `id` int(11) NOT NULL AUTO_INCREMENT,<br/>
  `sn` int(11) NOT NULL,<br/>
  `ts` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'ts - timestamp when ordercode arrived to this station\n',<br/>
  `note` text COLLATE utf8_slovenian_ci,<br/>
  `error_id` int(11) DEFAULT NULL COMMENT,<br/>
  PRIMARY KEY (`id`),<br/>
  KEY `fk_change_product_id` (`product_id`),<br/>
  KEY `sn_ts_added_kalup` (`sn`,`ts`) USING BTREE,<br/>
  CONSTRAINT `fk_change_product_id` FOREIGN KEY (`product_id`) REFERENCES `products` (`id`) ON UPDATE CASCADE<br/>
) ENGINE=InnoDB AUTO_INCREMENT=297567 DEFAULT CHARSET=utf8

0 个答案:

没有答案