按一列与另一列的值完全相同的位置排序

Ordering by where one column is exactly the same value as another column

我需要根据一列与另一列的值完全相同的位置进行排序。有什么办法可以做到这一点?如果有,请告诉我。 ORDER BY wordMatch = wordCount

SELECT * , 
( input LIKE  '% i %') + 
( input LIKE  '% love %' ) + 
( input LIKE  '% you %' ) AS wordMatch, 
( LENGTH( input ) - LENGTH( REPLACE( input,  ' ',  '' ) ) -1 ) AS wordCount
FROM allData
HAVING wordMatch > ( wordCount * 0.6666 ) 
AND wordCount > ( 3 * 0.6666 ) 
ORDER BY wordMatch = wordCount
LIMIT 50

如果您首先想要最接近的匹配项,则使用 desc:

order by (wordMatch = wordCount) desc

或者,您可能还需要差值的绝对值:

order by abs(wordMatch - wordCount)

我正在寻找这样的东西:

ORDER BY wordMatch = wordCount DESC , wordCount DESC