|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
“对于MySQL数据库,无论是在开发方面,还是支持方面,现在有大量强大的MySQL学习教程可以选择。每一个新手开发者可以轻松地使用MySQL数据库进行开发。CONTAINSTABLE语法
我们一般在FROM子句中利用CONTAINSTABLE,就象如许:SELECT*FROMtable_name,CONTAINTABLE(fulltext_table,fullText_column,searchcondition)WHERE......。
CONTAINSTABLE在查询体例上与CONTAINS几近一样,以是就不必赘述了。CONTAINSTABLE前往的是切合查询前提的表,在SQL语句中我们能够把它看成一个一般的表来利用。
我们看一个例子,对照这两种表的分歧。
SELECTFT_TBL.student_name,FT_TBL.student_score,KEY_TBL.RANK
FROMreportASFT_TBLINNERJOIN
CONTAINSTABLE(student,address,
ISABOUT(cityweight(.8),countywright(.4)))ASKEY_TBL
ONFT_TBL.student_id=KEY_TBL.[KEY]
ORDERBYKEY_TBL.RANK
CONTAINSTABLE前往的表包括有特别的两列:KEY,RANK。
在第一部分里我们就夸大了:被全文索引的表必需有独一索引。这个独一的索引列在前往的表中就成为KEY。我们一般把它作为表毗连的前提。
在某些网站搜刮时,了局中会呈现暗示婚配水平的数字,RANK与此相似。它的值在0~1000之间,标识每行与查询前提的婚配水平,水平越高,RANK的值年夜,一般情形下,依照RANK的降序分列。
FREETEXT语法
FREETEXT与CONTAINS相似,只是没有CONTAINS的精度高。在CONTAINS中,对查询前提的写法有良多请求,而FREETEXT就没有,能够是恣意的单词,词组或句子。看上面的例子:
SELECTCategoryName
FROMCategories
WHEREFREETEXT(Description,sweetestcandybreadanddrymeat)
FREETEXTTABLE语法
和CONTAINSTABLE一样,FREETEXTTABLE前往带有KEY,RANK的表。举例申明:
SELECTFT_TBL.CategoryName,
FT_TBL.Description,
KEY_TBL.RANK
FROMCategoriesASFT_TBLINNERJOIN
FREETEXTTABLE(Categories,Description,
sweetestcandybreadanddrymeat)ASKEY_TBL
ONFT_TBL.CategoryID=KEY_TBL.[KEY]
在ASP中利用全文本检索
Dimcnn
Dimrs
DimstrSQL
strSQL="SELECTbook_name"&_
"FROMbooks"&_
"WHERECONTAINS(description,"&Request("search_condition")&")"
Setcnn=Server.CreateObject("ADODB.Connection")
Setrs=Server.CreateObject("ADODB.RecordSet")
cnn.Open"provider=sqloledb;datasource=.;initialcatalog=books;userid=sa;pasword=;"
rs.OpenstrSQL,cnn
下面的例子非常复杂,仅为表示。只需把握了CONTAINS和CONTAINSTABLE的语法,在利用上和一样平常的ADO查询一样。
全文本检索的使用(1)
全文本检索的使用(2)
有的时候,一些缺失的功能可以通过别的办法来实现,例如,在MySQL4.1以前,你可以通过使用join方法来替代子查询的功能。在MySQL5.0中,大多数关系型数据库所要求的功能已经都具备。 |
|