Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.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_Sql Like - Fatal编程技术网

Mysql 我喜欢另一个领域

Mysql 我喜欢另一个领域,mysql,sql-like,Mysql,Sql Like,我有一个包含两个字符串列的表:Url和ModelId。我需要返回Url包含ModelId的记录,如下所示: SELECT Id, Url, ModelId WHERE Url like "%ModelId%" 选择Id、Url、ModelId,其中Url类似“%”+ModelId+“%” 以下是查询: SELECT Id, Url, ModelId WHERE Url LIKE CONCAT('%', ModelId, '%') 您不能仅对字符串进行concat,还必须从%和x中转义字段:

我有一个包含两个字符串列的表:Url和ModelId。我需要返回Url包含ModelId的记录,如下所示:

SELECT Id, Url, ModelId WHERE Url like "%ModelId%"
选择Id、Url、ModelId,其中Url类似“%”+ModelId+“%”
以下是查询:

SELECT Id, Url, ModelId WHERE Url LIKE CONCAT('%', ModelId, '%')

您不能仅对字符串进行concat,还必须从%和x中转义字段:

SELECT Id, Url, ModelId 
WHERE Url LIKE CONCAT('%', REPLACE(REPLACE(ModelId,'%','\%'),'_','\_'), '%'), '%')

您的查询没有意义。从什么时候起,
+
在MySQL中可以进行字符串连接?如果字段中有%的话,您可能希望转义该字段:如CONCAT(“%”,REPLACE(字段“%”,“\%”,“\%”,“%”),很棒。问题:是否也应转义“\”字符<代码>替换(替换(替换(模型ID“\\”、“\\\”)、“%”、“\\\”)、“\%”、“\\\”)、“\\\”
SELECT Id, Url, ModelId WHERE Url LIKE CONCAT('%', ModelId, '%')
SELECT Id, Url, ModelId 
WHERE Url LIKE CONCAT('%', REPLACE(REPLACE(ModelId,'%','\%'),'_','\_'), '%'), '%')