gpt4 book ai didi

mysql - 使用 select 语句从数据库中获取最大匹配

转载 作者:行者123 更新时间:2023-11-29 01:54:36 25 4
gpt4 key购买 nike

我正在尝试使用 SELECT 语句从我的数据库中获取匹配项多于 0 的匹配项数,但我也只想获取最大匹配项。因此,如果有 1,2 和 3 的匹配项,我只想匹配 3。在我添加“AND 'matches' = MAX( 'matches' )”部分后,由于某种原因它停止获得结果。在我添加它之前它正在获得结果。我想知道我做错了什么,以及如何解决它。谢谢。

SELECT input, response, 
( input LIKE '% you %' ) +
( input LIKE '% are %' ) +
( input LIKE '% here %' )
AS 'matches'
FROM allData
HAVING `matches` > 0
AND 'matches' = MAX( 'matches' )

最佳答案

您在问题中标记了 mysql。这有点不幸,因为与 MySQL 相比,对于当今流行的几乎所有其他关系数据库,这个问题都可以得到更清晰的回答。然而,使用 MySQL 你可以这样做:

SELECT
input,
response,
( input LIKE '% you %' ) +
( input LIKE '% are %' ) +
( input LIKE '% here %' )
AS matches
FROM allData
HAVING matches > 0
AND matches = (
SELECT MAX(
( input LIKE '% you %' ) +
( input LIKE '% are %' ) +
( input LIKE '% here %' ) )
FROM allData
)

关于mysql - 使用 select 语句从数据库中获取最大匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32638764/

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