Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.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
在LIKE中使用的MySQL查询结果_Mysql - Fatal编程技术网

在LIKE中使用的MySQL查询结果

在LIKE中使用的MySQL查询结果,mysql,Mysql,我正在尝试编写一个查询,以从字段中的一个大型用户名列表中提取包含用户名的所有行 例如,该表包含一个名为“Worklog”的列,其中包含用户及其用户名的注释。我需要在该字段中搜索列表中包含的所有用户名 我尝试了一些不同的方法,但都没有成功。到目前为止,这是我尝试过的: SELECT * FROM `JULY2010` WHERE `WorkLog` IN ( SELECT CONCAT( '%', `UserName` , '%' ) FROM `OpsAnalyst`

我正在尝试编写一个查询,以从字段中的一个大型用户名列表中提取包含用户名的所有行

例如,该表包含一个名为“Worklog”的列,其中包含用户及其用户名的注释。我需要在该字段中搜索列表中包含的所有用户名

我尝试了一些不同的方法,但都没有成功。到目前为止,这是我尝试过的:

SELECT * 
FROM `JULY2010` 
WHERE `WorkLog` 
IN (
     SELECT CONCAT( '%', `UserName` , '%' ) 
     FROM `OpsAnalyst`
)

问题是我需要使用LIKE,因为它搜索大量文本,但我也有一个很大的列表,它从中提取,并且该列表需要是动态的,因为在这里工作的人经常变化。有什么想法吗?

我稍微修改了这个,并使用了GROUP_CONCAT,现在我的查询如下:

 SELECT * 
 FROM `JULY2010` 
 WHERE `WorkLog`  REGEXP
  (SELECT CONCAT( `UserName`, '|') 
   FROM `OpsAnalyst`)
SELECT * 
FROM JULY2010 
WHERE `WorkLog` 
REGEXP (
    SELECT GROUP_CONCAT(`UserName` SEPARATOR '|') FROM `OpsAnalyst`
)

我现在得到了一个结果集,但它似乎没有我应该得到的那么多结果。我需要进一步研究一下,找出问题所在

为什么需要使用like?你不能把这两张桌子连在一起吗?看看这个答案。meybe regexp help you@Tim我没有任何可以加入表的东西。没有公共列。也许我误解了你的回答?我对SQL有点陌生,到目前为止,我所尝试的一切都与我在谷歌搜索有类似问题的人时发现的不同。我在执行此查询时遇到了以下错误:1242-子查询返回的行数超过1行