我試過了一些選項,但它根本不起作用或不符合我的需要。帶CAST或SUM問題的SQL CASE
其對下面的SQL(這並不工作,但最爲接近我所需要的):
SELECT CASE WHEN r.`content` LIKE '% word1 %'
then 1
else 0
END AS `val1`
, CASE WHEN r.`content` LIKE '% word2 %'
then 1
else 0
END AS `val2`
, CASE WHEN r.`city` LIKE 'cityname'
then 1
else 0
END AS `val3`
, (`val1`+`val2`+`val3`) AS `reference_value`
FROM `testimonials` as r
WHERE `accepted`='1'
ORDER BY `reference_value`
所以基本上與最高分進入端在頂部。當3例匹配reference_value
將有3分。 該代碼是動態的,所以它也可以是4,5,6,7或更多CASE。
我希望這對你有任何意義。 在此先感謝。
總是提供一些數據集和預期結果。不管你用「文字」來解釋它有多清楚。有這個:...想要這個:...將以最快的方式正確回答 – M0rtiis