我正在尝试搜索mySQL数据库并返回具有最高版本的结果,但是当搜索中有空格时,它始终不返回任何结果。
我尝试在查询的select MAX中使用replace,但这只是导致语法错误。
SELECT document_versions.payload, document_versions.version
FROM document_versions
INNER JOIN documents ON documents.guid = document_versions.document_guid WHERE document_versions.title = @name
AND documents.document_type_id = 35
AND document_versions.version =
(SELECT MAX(version) FROM document_versions WHERE title = @name)
我也尝试过
SELECT document_versions.payload, document_versions.version
FROM document_versions INNER JOIN documents ON documents.guid = document_versions.document_guid
WHERE REPLACE(document_versions.title,' ','') =
REPLACE(@name,' ','')
AND documents.document_type_id = 35
AND document_versions.version =
SELECT MAX(version) FROM document_versions
WHERE REPLACE(title,' ','') = REPLACE(@name,' ',''))
哪个也不返回结果。
答案 0 :(得分:0)
您尝试过这样吗?
SELECT document_versions.payload, document_versions.version
FROM document_versions
INNER JOIN documents ON documents.guid = document_versions.document_guid
WHERE document_versions.title = @name
AND documents.document_type_id = 35
ORDER BY document_versions.version DESC LIMIT 1