ok... here's a section of my tbl defs.. and the sql that accesses it.. are you saying that i should simply redefine the tbls, to create an index on the column name. as far as i can tell from reviewing mysql/google, i don't have to do anything differntly to the sql, in order to use the 'indexes'... is this correct..???
tbl defs:.... create table universityTBL( name varchar(50) not null default '', repos_dir_name varchar(50) not null default '', city varchar(20) default '', stateVAL varchar(5) not null, userID int(10) not null default'', ID int(10) not null auto_increment, primary key (ID), unique key (name) -- unique key (repos_dir_name) )type =bdb; create table university_urlTBL( universityID int(10) not null default '', urltype int(5) not null, url varchar(50) not null default '', -- userID int(10) not null default'', actionID int(5) null default '', status int(5) null default '', ID int(10) not null auto_increment, primary key (ID), -- unique key (url, urltype), unique key (url, universityID, urltype) )type =bdb; create table parsefileTBL( university_urlID int(5) not null default '', -- filelocation varchar(50) not null default '', name varchar(50) not null default '', -- urltype int(2) not null, userID int(10) not null default '', -- actionID int(5) null default '', start_status int(1) null default '', dev_status int(1) null default '', test_status int(1) null default '', review_status int(1) null default '', prodtest_status int(1) null default '', prod_status int(1) null default '', op_status int(1) null default '', fileversion varchar(50) not null default '', fileID int(10) not null auto_increment, primary key (fileID), unique key (university_urlID, name) )type =bdb; sql : $query_ = "select u1.urltype as type, p1.start_status as status from university_urlTBL as u1 right join parsefileTBL as p1 on u1.ID = p1.university_urlID join latestParseStatusTBL as l1 on p1.fileID = l1.itemID where u1.universityID='$id'"; $query_ = "select u4.username as user from universityTBL as u1 left join university_urlTBL as u2 on u2.universityID = u1.ID right join parsefileTBL as p1 on p1.university_urlID = u2.ID left join user_rolesTBL as u3 on u3.itemID = u2.ID left join users as u4 on u3.userID = u4.user_id where u2.urltype = u3.itemType and u2.urltype = '$type' and u3.process = '$process' and u1.ID='$id' group by date asc limit 1"; i'm not sure i understand how the 'index' is supposed to speed up table access/interaction... as an example.. if i run the 1st query.. i get: mysql> explain select u1.urltype as type, p1.start_status as status from university_urlTBL as u1 right join parsefileTBL as p1 on u1.ID = p1.university_urlID join latestParseStatusTBL as l1 on p1.fileID = l1.itemID where u1.universityID='40'; +----+-------------+-------+--------+--------------------------+---------+-- -------+------------------------------+-------+-------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+-------+--------+--------------------------+---------+-- -------+------------------------------+-------+-------------+ | 1 | SIMPLE | l1 | index | itemID | itemID | 12 | NULL | 11737 | Using index | | 1 | SIMPLE | p1 | eq_ref | PRIMARY,university_urlID | PRIMARY | 4 | colleges.l1.itemID | 1 | | | 1 | SIMPLE | u1 | eq_ref | PRIMARY | PRIMARY | 4 | colleges.p1.university_urlID | 1 | Using where | +----+-------------+-------+--------+--------------------------+---------+-- -------+------------------------------+-------+-------------+ 3 rows in set (0.04 sec) -----Original Message----- From: Ed Lazor [mailto:[EMAIL PROTECTED] Sent: Tuesday, September 28, 2004 11:02 AM To: [EMAIL PROTECTED]; [EMAIL PROTECTED] Subject: RE: increasing mysql/table performance.. I usually create an index for each criteria being checked against in the SQL statements. For example, for this query Select * from products where ProductID = 'aeg8557' I'd create an index on ProductID. The same thing applies if you're pulling data from multiple tables. For this query: Select products.ID, products.Title, categories.Title from products, categories where products.ID = '5' AND products.CategoryID = categories.ID I'd make sure that products.ID, products.CategoryID, and categories.ID all have an index. -Ed > -----Original Message----- > i've read/seen information regarding indexes within a table. i'm curious > as > to what i can do to speed up the response time/tbl interactions for the > users.... -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]