问题标签 [match-against]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1380 浏览

mysql - Mysql Match() Against() 不起作用

我正在使用MATCH.....AGAINSTphpMyAdmin但它不起作用
这是表格。

这是一个查询phpMyAdmin

它没有返回结果。为什么?但是两个句子中都存在
一个单词软件。
请指导我。
谢谢....

0 投票
1 回答
739 浏览

mysql - MySQL 中 MATCH ('...' IN NATURAL LANGUAGE MODE) 的最大可能值范围是多少?

MySQL 提供FULLTEXT索引,可以使用MATCH (col1,col2,...) AGAINST (expr [search_modifier])构造检索。有多种全文搜索变体,其中之一(也是默认的)是Natural Language Full-Text Search

那么 MATCH 的最大可能值是多少(自然语言模式中的'...')?


例子:

这个查询

返回一个带有列的结果表relevance,我们在其中存储coursedata.title行的相关值'Basketball'。还是行的相关性'Basketball'coursedata.title?无论如何,我们将MATCH(...)函数的输出存储在那里。就我而言,我从0to 获取值3.695953130722046

0 投票
4 回答
350 浏览

mysql - 使用 MYSQL 生成分数时如何检查所有连接

我正在使用 MYSQL 为查询返回的每个结果生成一个分数。然后按分数对结果进行排序。

似乎无法正常工作的部分是当我尝试为已搜索的每个标签添加分数并将结果分配给时。所以假设我搜索标签“example”、“test”和“tag”,我的结果之一被分配给标签“example”、“test”、“someothertag”它应该得到10分因为有 2 场比赛。

实际发生的情况是,如果匹配,无论匹配多少标签,我都会得到 5 分。如果没有匹配的标签,则为 0。

以下是从搜索生成的查询之一的示例。

0 投票
4 回答
1896 浏览

mysql - MySQL MATCH() 反对()

我想从数据库中找到所有记录date“2013-04”的所有记录。

我用:

但它没有给出正确的答案,因为我得到的记录日期等于'2013-01-29', '2013-03-28'

我的问题是如何使用MATCH() AGAINST()likeLIKE() 功能"2013-04%"

0 投票
1 回答
472 浏览

mysql - 有趣的 MATCH AGAINST 问题:不搜索某些单词

我有一张这样的桌子:

我使用的全文搜索基本上是这样的:

所以当我搜索耳机时,mysql 给出了 1.812121 的分数。

但是当我搜索iphone时;mysql给0分。

ps: ft_min_word_len = 2

0 投票
2 回答
3030 浏览

mysql - 在 MySQL 中的全文搜索前添加 *(星号)

我知道星号是可以附加到全文搜索词末尾的通配符,但是如果我搜索的关键字是后缀怎么办?例如,我希望能够搜索“ames”并返回包含名称“james”的结果。这是我当前的查询,它不起作用,因为您不能在全文搜索前添加星号。

我会简单地切换到使用 LIKE,但对于我的数据库大小来说它太慢了。

0 投票
1 回答
2443 浏览

mysql - Mysql全文搜索带加号

我有一个问题。

在我的 MySql 数据库中,我在产品表中有 40000 行。表有一个名为T9Text的列。我的 T9Text 行区域之一是这样的:

UNISNLS106B UNI.SNLS 106B SNLS-106B M.OT. 12V 2Delïkotorcrafttİpİunipoint 66-205 66205 F02Z-11390-A F02Z11390A E90Z-111390-A E90Z11390A F4DZ-11390-A

对于自动完成过程,我在 db 中运行了一个存储过程。是这样的:

像这样,它工作得很好并且只返回一行。

但我需要像这样写我的 where 条件:

使用上面的代码,它返回 1877 行。就像加号不起作用

第一个查询返回 1 行,但第二个查询返回 0 行。

所以,有我的问题:在mysql全文搜索中,我不能使用+测试表达式吗?如果没有,有没有办法做到这一点?(喜欢除外)

0 投票
0 回答
112 浏览

php - 在 MySQL 查询中选择使用 MATCH-AGAINST 和 IN?

我在 PHP 中有以下查询:

简单来说,我想item_id从表items中选择

  1. item_id值可以在数组中找到$matches_s,并且
  2. 存储的字符串eng_name可以在字符串中找到$query

然后输出一个二维数组,其中二级数组包含item_idscore(相关性)元素。

我尝试过切换条件优先的顺序,或者使用括号。这是我得到的结果:

问题是'我做错了什么?我必须以与其他AND陈述不同的方式写这个吗?

0 投票
2 回答
12826 浏览

mysql - MySQL Match Against In Boolean Mode 在中间字上不返回任何内容

我在我的 MySQL 数据库中使用 Match Against 时遇到问题,我希望有人能提供帮助。

这是我数据库中数据的示例:

当我运行此查询时:

这带回了第一个结果:

然而,它是更大查询的一部分,当我运行 Match Against 代码时,我没有从这些查询中得到任何返回:

我打开了全文搜索,当我搜索名称的开头时它可以工作:

两者都返回:

我已通读此解决方案:http ://dev.mysql.com/doc/refman/5.5/en/fulltext-boolean.html

我看过这里:mysql WHERE MATCH AGAINST

有人可以看看我哪里出错或指出我正确的方向吗?

谢谢!

编辑

好的,根据下面的 Woot4Moo 很好的答案,我已经更改了我的代码以删除不应该存在的逗号。我还添加了 + 并将其放在单引号中,但仍然没有运气。

我当前的查询现在看起来像这样:

但它在查询浏览器中没有返回任何结果,也没有返回任何错误或警告。

0 投票
1 回答
465 浏览

php - 使用 OR 条件进行全文搜索的 Mysql 查询

我有一个下拉列表,其中仅包含两个选项AndOr. 选择这两个选项时将运行查询,但取决于选择。选择时And,将对查询进行更改。我的查询看起来像这样,

注意这MATCH AGAINST部分,那是我想添加我的AndOr条件的地方。And如果在选择条件时查询将与node_name使用AND逻辑匹配,并且在选择Or条件时查询将与node_name使用逻辑匹配,我该怎么做OR。任何帮助都可以。谢谢。