使用SQL LIKE运算符选择行最大值


Selecting row max value using SQL LIKE operator

我正在尝试使用max()函数和SQL中的SQL LIKE运算符来获取最大值的行。

Table
ID | meta_key      | meta_value
---------------------------------
1  |best_score_1   |     10       
1  |best_score_2   |     20       
1  |best_score_3   |     30       
1  |best_score_4   |     40       

这是我的sql

SELECT MAX(meta_value), meta_key FROM Table WHERE meta_key LIKE '%'_best_score%'

它显示了正确的最大值,问题是,meta_key显示错误,输出应该是best_core_4和40,但它产生了best_core_1和40
我想知道我缺了哪一部分?

在这种情况下,只需使用ORDER BYLIMIT 1

SELECT meta_value, meta_key
FROM Table
WHERE meta_key LIKE '%best_score%'
ORDER BY meta_value DESC
LIMIT 1