Dear List,
 
 
I have a table: 
 
CREATE TABLE `TICKER_HISTORY_PRICE_DATA_STAGING_NO_KEYS` (
  `price_data_ticker` char(8) NOT NULL default '',
  `price_data_date` date NOT NULL default '0000-00-00',
  `price_data_open` float default NULL,
  `price_data_high` float default NULL,
  `price_data_low` float default NULL,
  `price_data_close` float default NULL,
  `price_data_volume` float default NULL,
  KEY `prdadadx` (`price_data_date`),
  KEY `prdatidx` (`price_data_ticker`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 |

That holds:
 
mysql> select count(*) from TICKER_HISTORY_PRICE_DATA_STAGING_NO_KEYS;
+----------+
| count(*) |
+----------+
| 19087802 |
+----------+
1 row in set (0.00 sec)

I am looking to see if there is something I can do to speed up this
query:
 
select count(price_data_date), price_data_date from
TICKER_HISTORY_PRICE_DATA_STAGING_NO_KEYS group by price_data_ticker,
price_data_date having count(price_data_date) > 1;
 
My explain returns:
 
mysql> explain select count(price_data_date), price_data_date from
TICKER_HISTORY_PRICE_DATA_STAGING_NO_KEYS group by price_data_ticker,
price_data_date having count(price_data_date) > 1;
+----+-------------+-------------------------------------------+------+-
--------------+------+---------+------+----------+----------------------
-----------+
| id | select_type | table                                     | type |
possible_keys | key  | key_len | ref  | rows     | Extra
|
+----+-------------+-------------------------------------------+------+-
--------------+------+---------+------+----------+----------------------
-----------+
|  1 | SIMPLE      | TICKER_HISTORY_PRICE_DATA_STAGING_NO_KEYS | ALL  |
NULL          | NULL |    NULL | NULL | 19087802 | Using temporary;
Using filesort |
+----+-------------+-------------------------------------------+------+-
--------------+------+---------+------+----------+----------------------
-----------+

This table is intentionally designed without the primary keys, so we can
catch and display duplicates.
 
Regards,
 
 
Mikhail Berman
 

Reply via email to