我有一個名爲filePath的列,其數據類型爲TEXT。我怎樣才能比較一個文件路徑與另一個字符串(區分大小寫)?如何比較SQL中的文本數據類型
例子:
SELECT *
FROM source_code_links
WHERE filePath =
"C:\CtrlSpaceData\CtrlSpace VCS\ba4fe9cbcbdb14a7cbc91fdf65f9e98178afe353\src\servlets\Test.java";
我已經試過LIKE
,但它不正常工作。 我也試過PATINDEX,但那裏有錯誤,說功能PATINDEX不存在。
這是我試過的東西:
SELECT * FROM source_code_links
WHERE filePath LIKE "%ba4fe9cbcbdb14a7cbc91fdf65f9e98178afe353\src\servlets\Test.java";
SELECT * FROM source_code_links
WHERE filePath LIKE "C:\CtrlSpaceData\CtrlSpace VCS\ba4fe9cbcbdb14a7cbc91fdf65f9e98178afe353\src\servlets\Test.java";
SELECT * FROM source_code_links
WHERE PATINDEX("C:\CtrlSpaceData\CtrlSpace VCS\ba4fe9cbcbdb14a7cbc91fdf65f9e98178afe353\src\servlets\Test.java", filePath) > 0;
是否還有其他解決方案可用?
這是用於SQL Server還是......?什麼版本? – 2012-03-02 13:57:25
你能否用'LIKE'以及其他任何你試過的方式發佈整個嘗試? – Rob 2012-03-02 13:59:17
你在文件路徑和其他字符串之間做什麼比較?你想忽略大小寫嗎?你想查看其他字符串是否在指定的文件路徑中?你想看看另一個字符串是否是文件路徑末尾的指定文件名?您是否想測試指定的文件路徑是否與另一個字符串中的文件路徑搜索模式相匹配,如果是,您要使用哪種操作系統的通配符?你想能夠使用不同的子文件夾分隔符(例如'/'而不是'\')嗎?等等? – 2012-03-02 15:06:09