小编風吟月*_*風吟月的帖子

mysql匹配多个单词

下面是我坚持使用的一个示例sql,它不会返回名为"iphone 4s"的产品,它返回10个其他结果.任何帮助都会非常感谢

第一个sql示例

SELECT * FROM products 
          WHERE match(desc) against('+iphone +4s' IN BOOLEAN MODE) LIMIT 10";
Run Code Online (Sandbox Code Playgroud)

结果:包含"iphone"和"4s"字样

第二个sql示例

SELECT * FROM products 
           WHERE match(desc) against('+iphone 4s' IN BOOLEAN MODE) LIMIT 10";
Run Code Online (Sandbox Code Playgroud)

结果:包含单词'iphone',但如果它们也包含'4s'则排列更高

第3个sql示例

SELECT * FROM products 
           WHERE match(desc) against('iphone 4s' IN BOOLEAN MODE) LIMIT 10";
Run Code Online (Sandbox Code Playgroud)

结果:包含"iphone"或"4s"字样

我想搜索的是'iphone 4s',但它带有其他结果,比如'iphone很好,但是4s ......','新的iphone 5已发布......',...

任何人都可以帮我解决吗?谢谢.

mysql full-text-search

14
推荐指数
1
解决办法
2万
查看次数

一个简单的mySQL语句要问

我有一个关于mysql的问题,我正在创建一个供应商页面,要求列出所有供应商的详细信息及其产品(随机选择每个供应商的3个产品),所以我们必须加入2个表,一个是供应商,另一个是产品,我可以知道如何在单个mysql语句中呈现它们吗?

table1 - 供应商

id      corp_name      product_count
---------------------------------------
AD0728   John Smith     187
AD0729   JayJay         1983
Run Code Online (Sandbox Code Playgroud)

table2 - 产品

pid      cid        p_name      quantity
---------------------------------------
1      AD0728     Body Shampoo     10
2      AD0728     glass            10
3      AD0728     pen              10
4      AD0728     pencil           10
5      AD0728     eraser           10
6      AD0728     speaker          10
7      AD0729     monitor          10
8      AD0729     keyboard         10
9      AD0729     mouse            10
10     AD0729     processor        10
11     AD0729     box              10
12     AD0729     sunglass         10
Run Code Online (Sandbox Code Playgroud)

产量

id      corp_name      pid          p_name          quantity
----------------------------------------------------------------
AD0728 …
Run Code Online (Sandbox Code Playgroud)

php mysql

1
推荐指数
1
解决办法
128
查看次数

标签 统计

mysql ×2

full-text-search ×1

php ×1