I have a large table (8million+ rows) and I haven't se a primary index, quite simply because I don’t need to access the data by ID. I do however have a few standard btree index’s on the table. Will by queries on this table be faster if I create a primary index even if I don’t use it in queries? Thanks
No, it will not make any difference. A key is a key regardless if it is primary or not. You can also set one, and use explain to see if there is a difference, but if the id field is never used, then it shouldn't make any difference.
No, you should base your index on your query. An index on a column that is not in the WHERE, ORDER BY, or GROUP BY clause won't have any improvement.
Adding further, indexing will improve the performance, only if there is a large number of rows in the table.
indexing will help a lot on querying but at the same time performance will go down for updation, insertion and deletion...
this is so true. try not to create lots of indexes if you're not going to use them because it will slow down your script when you'll try to insert a new row.