![]() |
|
Welcome to the Computer Webmaster Gaming Console Graphics Forum forums. You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today! If you have any problems with the registration process or your account login, please contact contact us. |
| |||||||
| Database Database problems or need to ask a question? maybe something to do with sql injections or a database software question. Database topics cover MySQL, PostgreSQL, Oracle, SQL Server or anything else related to databases. |
![]() |
| | LinkBack | Thread Tools | Display Modes |
| | #1 | ||
| I have a table with a large number of rows, around 400.000 now, I need to select from. For instance: CREATE TABLE book ( id UNSIGNED INT AUTO_INCREMENT NOT NULL PRIMARY KEY, title VARCHAR(256), author VARCHAR(256), desc VARCHAR(256), notes VARCHAR(256), something VARCHAR(256), something_else VARCHAR(256), content TEXT, title_2 VARCHAR(256), author_2 VARCHAR(256), desc_2 VARCHAR(256), notes_2 VARCHAR(256), something_2 VARCHAR(256), something_else_2 VARCHAR(256), content VARCHAR(256), active INTEGER(1) ); What I need is to see if some fixed string is someplace in either of the CHAR or TEXT rows. Like this SELECT title, author, desc, notes, something, something_else, content, title_2, author_2, desc_2, notes_2, something_2, something_else_2, content FROM book WHERE (title LIKE '%joyce%' OR author LIKE '%joyce%' OR desc LIKE '%joyce%' OR notes LIKE '%joyce%' OR something LIKE '%joyce%' OR something_else LIKE '%joyce%' OR content LIKE '%joyce%' OR title_2 LIKE '%joyce%' OR title_2 LIKE '%joyce%' OR author_2 LIKE '%joyce%' OR desc_2 LIKE '%joyce%' OR notes_2 LIKE '%joyce%' OR something_2 LIKE '%joyce%' OR something_else_2 LIKE '%joyce%' OR content_2 LIKE '%joyce%') AND active = 1; Is it possible to speed such a query up with some indexes? Like: CREATE INDEX myIndex ON book (title, author, desc, notes, something, something_else, content, title_2, author_2, desc_2, notes_2, something_2, something_else_2, content) But it doesn't seem to do anything for me, and when I use analyse it reports no indexes were used. And the query (which need to be real time) takes a minute or more. Any way to optimise this? Thanks, /Rune | |||
| Featured Websites | ||||
|
![]() |
| Tags: fields, indexes, text |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
| |
Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Is it possible to change part of a db-fields content by sql statement? | Alexander Schoenhoff | Database | 2 | 05-31-2007 8:42 PM |
| HOW TO : concat text fields using a GROUP BY statement ? | Fred | Database | 1 | 05-31-2007 8:41 PM |
| Quickform: how to check two fields in one function using registerRule() | l Burnerheimerton | Pear | 1 | 05-20-2007 6:34 PM |
| Quickform: how to check two fields in one function using registerRule() | l Burnerheimerton | Pear | 0 | 05-20-2007 6:34 PM |
| Featured Websites | ||||
|