Jquery mysql使用类操作错误
我正在执行一个sql查询 我的桌子Jquery mysql使用类操作错误,jquery,mysql,sql,database,Jquery,Mysql,Sql,Database,我正在执行一个sql查询 我的桌子 __________________________ | col1 | --------------------------- | data for hello user | | data | ----------------------------- 当我执行查询时 Select * from table where col1 like '
__________________________
| col1 |
---------------------------
| data for hello user |
| data |
-----------------------------
当我执行查询时
Select *
from table
where col1 like '%data for hello user admin%'
它没有提供任何数据
我的表包含hello用户的数据,但我想知道是否使用hello用户管理员的数据
它还为我提供了与hello用户相同的数据
这是可能的,我该怎么做呢。如果您想要两行,请选择*FormTable,其中col1类似于'data%'
如果希望查询在字符串为hello user admin的数据时同时返回两行,那么这是不可能的,因为LIKE只在一个方向上工作:从输入字符串到所有行,而不是相反方向
如果要查找第一个匹配项,则需要不断从输入字符串中删除单词,直到找到匹配项:
hello用户管理员的数据%->不匹配
hello用户%->一个匹配的数据
%->一个匹配的数据
data%->两个匹配项您可以使用substr获得col1 contain的确切长度
select * form `table` where `col1` like CONCAT( SUBSTRING( 'data for hello user admin', 0, LENGTH( `col1` ) -1 ) , '%' )
删除第一个百分比col1,如“hello user admin%的数据”,但该表包含长度较小的数据,而查询包含长度较大的数据。来自hello用户的表数据来自hello用户的sql查询数据管理员?是否希望查询返回假匹配??根据什么规则?不,我允许用户搜索col1数据,因为用户不知道表中存在的数据,所以如果他键入的数据多于我col1中存在的数据,则会给出正确的输出。MySQL返回一个空结果集,即零行。查询花费了0.0557秒。这是关于您的子字符串。您可以将其变小,或尝试使用此select*表格,其中col1类似于CONCAT子字符串“hello user admin的数据”,0,长度col1-5,“%”