我编写了一个SQL查询,可以获取名称和大小的重复项:
SELECT t1.Filepath,
t1.splitFilePath1(Filepath)
FROM Filemanager t1
INNER JOIN (SELECT splitFilePath1(Filepath),
Size
FROM Filemanager
GROUP BY splitFilePath1(Filepath),
Size
HAVING COUNT(*) > 1) t2
ON t1.Size = t2.Size AND
t1.splitFilePath1(Filepath) = t2.splitFilePath1(Filepath)
在上面的查询中,splitFilePath1(Filepath)是一个用户定义的函数,它将Filepath作为输入并返回filename。收到文件名后,我必须找到文件名和大小的重复。
收到错误: 接近'(':语法错误
我无法理解'('。
的确切位置编辑:解决!! 查询: SELECT Filepath,splitFilePath1(Filepath)FROM Filemanager t1 INNER JOIN(SELECT Filepath as Filepath1,splitFilePath1(Filepath),Size FROM Filemanager GROUP BY splitFilePath1(Filepath),Size HAVING COUNT(*)> 1)t2 ON t1.Size = t2 .Size AND splitFilePath1(t1.Filepath)= splitFilePath1(t2.Filepath1)
感谢lollato !!
答案 0 :(得分:1)
将t1.splitFilePath1(Filepath)
更改为splitFilePath1(t1.Filepath)
,并将其他事件更改为t1.splitFilePath
。 t1
会引用()
中的列,并且在语法错误之后会有{{1}}个parens。