在join语句中使用最有效的方法是什么?

时间:2013-04-22 15:43:04

标签: mysql

使用join语句时,我想使用like条件加入表。 最有效的方法是什么?

使用fielda like CONCAT ('%', fieldb, '%')似乎效率不高

2 个答案:

答案 0 :(得分:1)

使用2个wild char渲染索引无用,你可以做的是删除前面的那个,而mysql仍然会使用索引找到你搜索的内容。如果您没有索引,要创建一个索引,请使用以下代码:

CREATE INDEX indexname ON tablename(columnname);

然后将查询更改为

fielda like CONCAT (fieldb, '%')

要使用索引,要考虑的其他事项是列文本字段或简单只是varchar字段,如果它包含更长的文本,则应考虑全文搜索。

这是一篇关于这个主题的更深入的文章,包括样本和良好的解释等。

http://devzone.zend.com/26/using-mysql-full-text-searching/

答案 1 :(得分:0)

如果您想进行实际搜索,您将需要学习如何进行全文索引和查询。我相信你可以通过搜索谷歌找到关于这个主题的一些引子,但这里有MySQL文档:http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html