解决方案 »

  1.   

    建议以文本方式贴出explain select ...的结果 及 show index from a; show index from b; show index from c; 以供分析。
      

  2.   

    表a表b 表c explain 
    这样可以吗?
      

  3.   


    CREATE TABLE `prod_category` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
      `domain` varchar(45) NOT NULL DEFAULT '',
      `parent_id` bigint(20) NOT NULL DEFAULT '0',
      `name` varchar(45) NOT NULL DEFAULT '',
      `sort` int(11) NOT NULL DEFAULT '0',
      PRIMARY KEY (`id`),
      UNIQUE KEY `mp_domain-parent_id-name` (`domain`,`parent_id`,`name`),
      KEY `sydomain` (`domain`)
    ) ENGINE=MyISAM AUTO_INCREMENT=31 DEFAULT CHARSET=utf8;
    CREATE TABLE `prod_category_tree` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
      `domain` varchar(45) NOT NULL DEFAULT '',
      `prod_category_id` bigint(20) NOT NULL DEFAULT '0',
      `prod_id` bigint(20) NOT NULL DEFAULT '0',
      PRIMARY KEY (`id`),
      KEY `syprod_category_id` (`prod_category_id`),
      KEY `syprod_id` (`prod_id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=4001 DEFAULT CHARSET=utf8;CREATE TABLE `prod` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
      `domain` varchar(45) NOT NULL DEFAULT '',
      `code` varchar(45) NOT NULL DEFAULT '',
      `name` varchar(100) NOT NULL DEFAULT '',
      `description` text,
      `sort` int(11) NOT NULL DEFAULT '0',
      `viewcount` int(11) NOT NULL DEFAULT '0',
      `seo` varchar(100) NOT NULL DEFAULT '',
      `brand` varchar(45) NOT NULL DEFAULT '',
      PRIMARY KEY (`id`),
      KEY `sydomain` (`domain`)
    ) ENGINE=MyISAM AUTO_INCREMENT=2001 DEFAULT CHARSET=utf8;SHOW INDEX FROM prod_category;
    SHOW INDEX FROM prod_category_tree;
    SHOW INDEX FROM prod;
      

  4.   

    要如何把 result 用文本方式贴上来?
    我找了很久都不会丫! 
      

  5.   

    explain 结果显示的第二行,第三行,明显已经使用了索引。