gpt4 book ai didi

MySql where 子句搜索失败

转载 作者:行者123 更新时间:2023-11-29 17:00:14 25 4
gpt4 key购买 nike

在我的 MySql Workbench 上,我正在执行一个简单的搜索查询:

SELECT * 
FROM test.table
WHERE originalFilePath = 'C:\inetpub\wwwroot\documentScanning\output\REQMAN/2018-09-06_10.03.53/TS18-6289.pdf';

SELECT *
FROM test.table
WHERE originalFilePath like '%C:\inetpub\wwwroot\documentScanning\output\REQMAN/2018-09-06_10.03.53/TS18-6289.pdf%';

SELECT *
FROM test.table
WHERE originalFilePath like '% C:\inetpub\wwwroot\documentScanning\output\REQMAN/2018-09-06_10.03.53/TS18-6289.pdf %';

但是每个查询总是空的。从进一步的测试来看,由于某种原因,该查询似乎不喜欢“C:\inetpub\wwwroot\documentScanning\output\”,这很奇怪,搜索值是直接从表本身复制和粘贴的。我已经让这个查询起作用了:

SELECT * 
FROM test.table
WHERE originalFilePath like '%\REQMAN/2018-09-06_10.03.53/TS18-6289.pdf';

但是,此查询将在每 2 分钟运行一次的脚本中使用,并且数据库非常大,因此我宁愿不使用上面的查询,而是直接搜索(等于),因为我被告知使用通配符搜索可能会减慢速度。有没有办法做到这一点?有人可以解释为什么它不喜欢搜索中的 'C:\inetpub\wwwroot\documentScanning\output\' 吗?

最佳答案

你必须在=中加倍\

你必须将\\变为四倍

SELECT * 
FROM test.table
WHERE originalFilePath = 'C:\\inetpub\\wwwroot\\documentScanning\\output\\REQMAN/2018-09-06_10.03.53/TS18-6289.pdf';

SELECT *
FROM test.table
WHERE originalFilePath like '%C:\\\\inetpub\\\\wwwroot\\\\documentScanning\\\\output\\\\REQMAN/2018-09-06_10.03.53/TS18-6289.pdf%';

SELECT *
FROM test.table
WHERE originalFilePath like '% C:\\\\inetpub\\\\wwwroot\\\\documentScanning\\\\output\\\\REQMAN/2018-09-06_10.03.53/TS18-6289.pdf %';

关于MySql where 子句搜索失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52319886/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com