我实际上在一个网站上工作,有两个表,几乎相同,其中MATCH AGAINST在一个上工作但在另一个上不工作.要找出为什么我试图将其简化为一个简单的“让我们做一个简单的表格工作” – 但事实并非如此.

我正在使用phpMyAdmin进行测试,这是MySQL 5.1.41.

我构建的测试使用以下来定义表…

CREATE TABLE IF NOT EXISTS `test` (

`id` int(11) NOT NULL,

`title` text NOT NULL,

`body` text NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1;

ALTER TABLE `test` ADD FULLTEXT (`title`, `body`);

当我做一个SHOW INDEX FROM测试时,我看到有一个包含标题和正文的FULLTEXT键.

我插入几行

INSERT INTO `test` (`id`, `title`, `body`) VALUES

('1', 'Lorem Ipsum', 'Lorem ipsum dolor sit amet, consectetur ... lacus porta euismod.'),

('2', 'Lorem Ipsum (cont)', 'Nunc leo massa, vulputate ... euismod fringilla.');

(为简洁起见,删除了一些正文内容)

然后当我跑

SELECT * FROM `test` WHERE MATCH (`title`, `body`) AGAINST ('consectetur');

我得到一个空的结果集 – 没有找到行,但如果我运行

SELECT * FROM `test` WHERE `body` LIKE '%consectetur%';

然后找到一条记录.

虽然我对MySQL有很多经验,但这是我第一次使用MATCH,所以我做了些什么蠢事?为什么这不起作用?是否需要构建索引(我已在表上完成了REPAIR)或者它是否应该自动发生?

仅供参考,工作表定义为

CREATE TABLE IF NOT EXISTS `web_pages1` (

`id` int(11) NOT NULL,

`title` varchar(255) DEFAULT NULL,

`slug` varchar(255) DEFAULT NULL,

`meta_keywords` text,

`meta_description` text,

`snippet` text,

`body` mediumtext,

`created_by` int(11) DEFAULT NULL,

`date_created` datetime DEFAULT NULL,

`date_published` date DEFAULT NULL,

`author` varchar(255) DEFAULT NULL,

`edited_by` int(11) DEFAULT NULL,

`date_edited` datetime DEFAULT NULL,

`status` tinyint(4) NOT NULL DEFAULT '1',

`parent_id` tinyint(11) DEFAULT NULL,

`menu_id` int(11) DEFAULT NULL,

`short_name` varchar(255) DEFAULT NULL,

`sort_order` int(11) DEFAULT NULL,

PRIMARY KEY (`id`),

FULLTEXT KEY `search` (`title`,`slug`,`meta_keywords`,`meta_description`,`snippet`,`body`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1;

而导致我出现问题并将我送到这条路线的那个是

CREATE TABLE IF NOT EXISTS `web_news1` (

`id` int(11) NOT NULL,

`title` varchar(255) NOT NULL,

`slug` varchar(255) NOT NULL,

`meta_keywords` text,

`meta_description` text,

`snippet` text NOT NULL,

`body` text NOT NULL,

`created_by` int(11) NOT NULL,

`date_created` datetime NOT NULL,

`date_published` date DEFAULT NULL,

`author` varchar(255) DEFAULT NULL,

`edited_by` int(11) DEFAULT NULL,

`date_edited` datetime DEFAULT NULL,

`status` tinyint(4) DEFAULT '0',

PRIMARY KEY (`id`),

FULLTEXT KEY `search` (`title`,`slug`,`meta_keywords`,`meta_description`,`snippet`,`body`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

虽然我已经尝试将第二个定义为与第一个完全相同但仍无法正常工作.

mysql not exists无效_MySQL MATCH AGAINST无效相关推荐

  1. mysql update 无效_mysql update 语句无效

    表结构 CREATE TABLE `order_test` ( `order_id` int(11) NOT NULL AUTO_INCREMENT COMMENT ""订单索引i ...

  2. mysql if exists用法_MySQL中EXISTS的用法

    比如在Northwind数据库中有一个查询为 SELECT c.CustomerId,CompanyName FROM Customers cWHERE EXISTS(SELECT OrderID F ...

  3. mysql not exists优化_MySQL优化--NOT EXISTS和LEFT JOIN方式差异

    在MySQL中,我们可以将NOT EXISTS语句转换为LEFT JOIN语句来进行优化,哪为什么会有性能提升呢? 使用NOT EXISTS方式SQL为: SELECT count(1)FROMt_m ...

  4. mysql not exists 用法_mysql 子查询 exists 和 not exists使用方法和实例

    MySQL EXISTS 和 NOT EXISTS 介绍 SELECT ... FROM table WHERE EXISTS (subquery) 该语法可以理解为:将主查询的数据,放到子查询中做条 ...

  5. mysql的exists解析_mysql中关于exists的深入讲解

    mysql中关于exists的讲解 我认为exists语法是mysql中一个很强大的工具,可以简单地实现某些复杂的数据处理. 下面我谈谈与exists有关的三个方面. all 与 any 首先,看到了 ...

  6. mysql in 命中索引_MySql优化-你的SQL命中索引了吗

    在项目开发中SQL是必不可少的,表索也一样.这些SQL的运行性能不知道吗?有多少是命中了索引的?命中哪个索引?索引中有哪个是无效索引?这些无效索引是否会影响系统的性能?带着这些问题我们一起来学习一下. ...

  7. MySQL中EXISTS的用法

    比如在Northwind数据库中有一个查询为 SELECT c.CustomerId,CompanyName FROM Customers c WHERE EXISTS( SELECT OrderID ...

  8. mysql查询数据库结构_mysql查询数据库下的表结构

    mysql查询数据库下的表结构 方法:1.使用DESCRIBE命令以表格的形式展示表结构,语法"DESCRIBE 表名;":2.使用"SHOW CREATE TABLE& ...

  9. 解决安装mysql的”A Windows service with the name MySQL already exists.“问题

    解决安装mysql的"A Windows service with the name MySQL already exists."问题 参考文章: (1)解决安装mysql的&qu ...

最新文章

  1. 总结:Apache架构师30条架构原则
  2. 【 Vivado 】输入延迟约束实例
  3. 每一个C#开发者必须知道的13件事情
  4. linux怎么修改grub引导顺序,我如何更改GRUB引导顺序?
  5. SQL语句复习【专题八】
  6. apache 服务发布多个项目,只需要更改配置文件(需要设定虚拟主机)
  7. win10 git bash 闪退
  8. [BUUCTF-pwn]——inndy_rop
  9. tensorflow-eagerAPI
  10. uni map 实时记录轨迹_国际学校纷纷引进MAP考试系统,到底有什么好处?
  11. php小程序onload,微信小程序 loading 组件实例详解
  12. 源码包安装mysql5.7.25_centos源码安装mysql5.7.25-boost
  13. echart饼图标签重叠_怎么让ECharts饼图的label标签不重叠?
  14. Intel的X86芯片段式管理历史起源(CS、DS、ES、SS)——避免产品公司的小九九
  15. 国二c语言选择题要对一半,计算机二级考试C语言程序设计题有步骤分吗
  16. JAVA入门教程-专题视频课程
  17. 什么是脏读、不可重复读、幻读? (数据库相关)
  18. kpi绩效考核流程图_KPI绩效考核的步骤
  19. STL初步——集合Set
  20. (笔记)神经网络压缩,Ristretto: Hardware-Oriented Approximation of Convolutional Neural Networks(一)

热门文章

  1. VCS中VPD的使用简单教程
  2. 二价--无穷价阴阳鱼函式
  3. 计算机系统基础第四篇-6 elf文件的链接
  4. phpcms设置双模板 手机端和pc端 phpcms自定义手机端模板 phpcms手机端模板设置
  5. Fetion 操作台
  6. 简单电子病历功能设计
  7. java的tey语句return了_谈谈Java中try-catch-finally中的return语句
  8. 一日一技:爬取薄荷网食物热量
  9. 揭秘浏览器远程调试技术
  10. 香槟分校计算机研究生专业,伊利诺伊大学香槟分校研究生计算机系统专业排名...