我有一个表,其中有一个字段名称作为路径(文本fiels)表的条目如下所示
表名:员工
EmpID path
1 442
2 443-442
我使用了以下查询
SELECT EmpID FROM Employee WHERE concat('-',path,'-') like '%442%'
上面的查询返回EmpID 1和2,但我仍然不清楚上面的查询内部如何工作,我只是使用命中和试用方法,幸运的是我得到了正确的结果..现在任何人都可以解释如何上面的查询在内部工作
先谢谢!!
答案 0 :(得分:1)
您的查询正在采用路径,即422
,在末尾添加连字符以将其转换为-422-
,然后检查字符串422
是否存在于其中(它确实存在) )。
%是任意数量的任意字符的通配符。
-422-
是否与字符串(anything)422(anything)
类似?是的。
如果没有连字符连接,这将得到完全相同的结果。
答案 1 :(得分:0)
您可以阅读有关LIKE here
的更多信息