I’m going out on a limb to say MySQL’s full-text indexing and searching features are underused. They appeared in MySQL 3.23.23 (most people are using 4.x, and 5 is in development), but it’s been news to most of the people I know.
Here’s the deal, the MATCH() function can search a full-text index for a string of text (one or more words) and return relevance-ranked results. It’s at the core of the list of related links at the bottom of every post here.
For that query, I put all the tag names into a single variable that might look like this:
$keywords = “mysql database php select full-text search full-text searching docs documentation”
Then I do a select that looks something like this:
SELECT * FROM wp_posts WHERE MATCH(post_title,post_content) AGAINST(’$keywords’);
The docs give a lot more detail, including how to do boolean searches.
tags: boolean search, boolean searches, boolean searching, database, db, docs, documentation, full text, full text index, full text search, full text searching, fulltext, fulltext search, keywords, match(), mysql, rank, relevance, relevance rank, relevance ranked, relevance ranking, search, search full text
Related:
Posted September 6, 2005 by Casey
Categories: Technology. Tags: boolean search, boolean searches, boolean searching, database, db, docs, documentation, full text, full text index, full text search, full text searching, fulltext, fulltext search, keywords, match(), mysql, rank, relevance, relevance rank, relevance ranked, relevance ranking, search, search full text.
8 Comments
Comments RSS
TrackBack Identifier URI
Leave a comment
User contributed tags for this post:
sexs (18496) - gogle com (6760) - gogle (6726) - sexs com (1069) - world sex com (1043) - googleheart (559) - gogle earth com (409) - gogle it (236) - gogle earth (221) - mysql search relevance (205) - MySQL relevance (181) - FUL SEX (161) - WWW GOGLE COM (139) - world sexs (134) - mysql fulltext relevance (134) - WWW GOGLE (123) - WWW ARAB 6 COM (122) - mysql relevance search (121) - world sex (106) - world sexs com (103) - WWW GOGLE EARTH COM (101) - Google Earth com (99) - earth gogle com (99) - sexs 6 com (89) - ful porno (79) - www.arab 6.com (78) - goegle com (77) - sexs x (76) - mysql full text relevance (63) - fulltext relevance (63) - full sexs (63) - goegle (63) - mysql fulltext search relevance (59) - mysql full text search (56) - relevance mysql (52) - mysql fulltext (52) - sexs full (50) - mysql like relevance (49) - WWW SEXS COM (48) - mysql MATCH relevance (48) - gogle de (46) - mysql full text search relevance (44) - mysql 5 full text search (41) - www world sex com (39) - gogle com in (38) - mysql fulltext score (38) - word sexs (37) - www vorld sex com (37) - www.sexs.com (36) - sexs word (36) - WWW SEXS (36) - Search sexs (36) - WWW ARAB SEX COM (36) - goegle earth (36) - all (35) - mysql Relevance Ranking (35) - www arab sexs com (35) - google S com (32) - mysql full text score (32) - MySQL Full Text Search score (32) - mysql fulltext ranking (32) - mysql search by relevance (31) - arab sexs (30) - gogle sex (30) - goegle earth com (30) - www.arab.6.com (30) - sex 4 (29) - mysql Boolean Full Text Searches (29) - gogle sex com (28) - mysql fulltext boolean relevance (28) - 2786506456964 (28) - fulltext mysql (27) - mysql relevance score (26) - mysql match against relevance (26) - www.arab full sex.com (26) - WWW GOGLE EARTH (25) - doing sex (25) - sexs.com (24) - www.ful porno.com (24) - full text search relevance (23) - gogle com eart (23) - gogle video 666 (22) - mysql relevancy search (22) - GOOGLE sexs (21) - www.arab sex.com (21) - world sex de (21) - w w w gogle com (21) - doing sexs (21) - mysql 5 full text (21) - mysql full text relevancy (21) - mysql search relevancy (21) - mysql fulltext weight (21) - www sex full com (21) - arab porno (20) - relevance search mysql (20) - WWW GOOGLE EARTH COM (20) - earth gogle (20) - http earth gogle com (20) - word sexs com (20) - mysql 4 full text search (20) - mysql like (20) - full text mysql (20) - gogle full (20) - www.arab porno.com (20) - sex ful (19) - shemalles (19) - azdevag (19) - www sex s com (19) - google sex (18) - arab 6 com (18) - php mysql search relevance (18) - mysql fulltext relevancy (18) - www sex w (18) - www.arab sexs.com (18) - relevance (17) - arab sexs.com (17) - mysql as relevance (16) - mysql 5 fulltext (16) - people doing sex (16) - fulltext search relevance (16) - 3038451802374 (16) - www gogle sex (16) - www.sex full.com (16) - wordpress fulltext search (15) - mysql ranked search (15) - ful.porno (14) - mysql boolean relevance (14) - mysql full text (14) - www vorld sex (14) - www goegle earth com (14) - www goegle com (14) - arab6 (13) - mysql (13) - gogle world com (13) - fulltext mysql relevance (13) - mysql full text weight (13) - mysql 101 fulltext (13) - WWW ARAB PORNO COM (13) - gogle az (13) - s (12) - s e x s (12) - Search gogle (12) - mysql boolean fulltext relevance (12) - mysql 3 23 Boolean Full Text (12) - mysql distance (12) - gogle mysql (12) - MySQL Natural Language (12) - www ful sex com (12) - www.ful sex.com (12) - www.arab.porno (12) -
[...] Why? Because MySQL 3.x doesn’t support query caching, boolean full-text searching, or complex subqueries. [...]
[...] MySQL provides two types of fulltext searches - boolean and natural language. I’m going to focus on the natural language search because it is more mathematically intense. The underlying concept behind the method used in MySQL is that each term in each document is assigned a specific weight which is used to decide a query’s “distance” or “score” with respect to that document. The weights are assigned such that the weight is increased if the term occurs frequently in the document, but decreased in the term occurs frequently among all documents. For a description of how the weights are computed, check out the MySQL documentation. For the curious reader, this article also explains the computation of word-document weights. There are also a slew of articles on using fulltext search in practice. [...]
[...] MySQL provides two types of fulltext searches - boolean and natural language. I’m going to focus on the natural language search because it is more mathematically intense. The underlying concept behind the method used in MySQL is that each term in each document is assigned a specific weight which is used to decide a query’s “distance†or “score†with respect to that document. The weights are assigned such that the weight is increased if the term occurs frequently in the document, but decreased in the term occurs frequently among all documents. For a description of how the weights are computed, check out the MySQL documentation. For the curious reader, this article also explains the computation of word-document weights. There are also a slew of articles on using fulltext search in practice. [...]
[...] And I’m fully confident that when I put our entire catalog into WPopac, all 330,000 bib records (resulting in about 6.2 million atomic records), performance will still be up to the task. And my math suggests everything should be ducky on a relatively budget server up beyond about 1 million bib records), but what happens for libraries that have more than that, say, perhaps 6 to 8 million bib records (again, 110 to 150 million atomic records; again, all full-text indexed in MySQL)? [...]
salam dostaneh man harkasi keh mikad ba yek pesarehg 29 saleh mogarad va lisanseh mekanik az thran azdevag koneh ageh be tafahoom residim baram emall bezareh
[...] MySQL provides two types of fulltext searches - boolean and natural language. I’m going to focus on the natural language search because it is more mathematically intense. The underlying concept behind the method used in MySQL is that each term in each document is assigned a specific weight which is used to decide a query’s “distance†or “score†with respect to that document. The weights are assigned such that the weight is increased if the term occurs frequently in the document, but decreased in the term occurs frequently among all documents. For a description of how the weights are computed, check out the MySQL documentation. For the curious reader, this article also explains the computation of word-document weights. There are also a slew of articles on using fulltext search in practice. [...]
sexy gierls
Thanks Maison, was looking for it. I wanted to sort the results of SELECT query by releveance. But I was stuck with ‘%LIKE%’. You have helped me out.
Thanks a lot dear!