Christopher Malton wrote:

When I use the statement:



EXPLAIN SELECT * FROM workunits WHERE Sent>0



It returns



+-----------+------+---------------+--------+---------+--------+---------+------------+

| table | type | possible_keys | key | key_len | ref | rows | Extra |

+-----------+------+---------------+--------+---------+--------+---------+------------+

| workunits | ALL | [NULL] | [NULL] | [NULL] | [NULL] | 2297055 | where used |

+-----------+------+---------------+--------+---------+--------+---------+------------+



Which is the same as performing:



EXPLAIN SELECT * FROM workunits

You have no keys, so all 2297055 rows must be read in either query.
If you have only a few possible values for sent, a key may not help.



But If I



SELECT * FROM `workunits` WHERE Sent>0



I Get:



+----------------+-------+--------+-------+--------+-------+--------+------+----------------+----------------+----------------+

| wuid | ETilt | ETilt2 | MTilt | MTilt2 | STilt | STilt2 | Sent | ProcessByHost1 | ProcessByHost2 | ProcessByHost3 |

+----------------+-------+--------+-------+--------+-------+--------+------+----------------+----------------+----------------+

| 2222.11.6267.1 | 22 | 22.1 | 1.6 | 2 | 6 | 7.1 | 2 | 2 | 1 | 0 |

| 2222.11.6267 | 22 | 22.1 | 1.6 | 2 | 6 | 7 | 2 | 2 | 1 | 0 |

| 2222.11.6266.9 | 22 | 22.1 | 1.6 | 2 | 6 | 6.9 | 2 | 2 | 1 | 0 |

| 2222.11.6266.8 | 22 | 22.1 | 1.6 | 2 | 6 | 6.8 | 2 | 2 | 1 | 0 |

| 2222.11.6266.7 | 22 | 22.1 | 1.6 | 2 | 6 | 6.7 | 1 | 2 | 0 | 0 |

| 2222.11.6266.6 | 22 | 22.1 | 1.6 | 2 | 6 | 6.6 | 1 | 2 | 0 | 0 |

+----------------+-------+--------+-------+--------+-------+--------+------+----------------+----------------+----------------+





Only 6 rows in set



I am using MySQLd 3.23.44



If I should upgrade which is probably a good idea, what version should I get?



Chris


-- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]



Reply via email to