Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL搜索精确匹配_Mysql - Fatal编程技术网

MySQL搜索精确匹配

MySQL搜索精确匹配,mysql,Mysql,我想在SQL中搜索精确匹配: 在用户表的searchString列中,我有: alan@xxx.com 654433 active other text ted@xsdd.com 43434 inactive other text 我只想搜索活动或非活动: SELECT u FROM User u WHERE u.searchString = 'active' 或 但是它返回两条语句的两行 预期结果: searchString='active'返回alan@xxx.com仅限行 search

我想在SQL中搜索精确匹配:

在用户表的searchString列中,我有:

alan@xxx.com 654433 active other text
ted@xsdd.com 43434 inactive other text
我只想搜索活动或非活动:

SELECT u FROM User u WHERE u.searchString = 'active'

但是它返回两条语句的两行

预期结果:

searchString='active'返回alan@xxx.com仅限行

searchString='inactive'返回ted@xsdd.com仅限行


请帮忙。谢谢。

使用
类似于
运算符的
条件

SELECT u FROM User u WHERE u.searchString like '%active%' 
   or u.searchString like '%inactive%'

很抱歉我不清楚。我已经编辑了我的帖子。我只想返回1。请帮忙。谢谢。如果某个字符串包含“inactive”字,它将与%active%匹配,因此没有理由在where子句中包含类似“%inactive%”的内容。但是,如果某些记录包含“半活动”,它也会与%active%匹配(不正确?),因此我不会进行此类搜索。您的查询(如所述)将完全按照您的意愿进行。数据不符合条件,或者您没有发布正确的查询。“活动”上的精确匹配不可能返回带有“非活动”的行,反之亦然。您发布的数据和查询似乎都是示例,而不是您在数据库中使用的数据。请张贴实际代码和实际样本数据。
SELECT u FROM User u WHERE u.searchString like '%active%' 
   or u.searchString like '%inactive%'