匹配,我有以下MySQL查詢其作品數字符CONCAT MySQL的REGEXP
SELECT *,
CONCAT(office, ' ', contactperson) AS bigDataField
FROM webcms_mod_references
HAVING bigDataField REGEXP "one|two"
現在有沒有ORDER BY,如果: - bigDataField包含「一」這一欄中顯示 - bigDataField包含「一個兩個「這個字段顯示爲
現在它取決於哪一個顯示第一,但我希望有更多的匹配顯示第一!
我試着用
SUM(
CASE WHEN bigDataField REGEXP "one|two"
THEN 1
ELSE 0 END
) AS matches
但是,這並不工作。誰能幫我。我認爲最好的方式就像標題所說的那樣來計算REGEXP中的匹配字符。如果有其他方法請解釋。
REGEXP是一個用戶輸入,所以我試圖在一個小型數據庫上實現一個小型搜索。
SQLFile down,stackoverflow在mysql上的回答率會下降到:) – nrathaus
這是一個很好的解決方案。我正要寫後,我寫我的:)只有一件事是,你應該反向排序字段(使用DESC') –
@MostyMostacho同意。謝謝。 – Moob