UPDATE mytable SET this = 'this' AND that = 'that'
WHERE MATCH (items) AGAINST ('item5')
问题是此查询将对UPDATE
找到的每个匹配项执行一次,而不是更新匹配的第一行所需的结果。
添加LIMIT 0, 1
到查询会导致 MySQL 语法错误。有没有办法对使用全文查询找到的第一条记录进行更新?
UPDATE mytable SET this = 'this' AND that = 'that'
WHERE MATCH (items) AGAINST ('item5')
问题是此查询将对UPDATE
找到的每个匹配项执行一次,而不是更新匹配的第一行所需的结果。
添加LIMIT 0, 1
到查询会导致 MySQL 语法错误。有没有办法对使用全文查询找到的第一条记录进行更新?
根据 的文档update
,您可以使用:
[LIMIT row_count]
而不是,就像你做的那样:
LIMIT 0, 1
因此,在您的情况下,您的查询将如下所示:
UPDATE mytable SET this = 'this' AND that = 'that'
WHERE MATCH (items) AGAINST ('item5')
LIMIT 1