2
我正在構建一個查找與用戶在表單中輸入的內容類似的項目的功能。 用戶填寫兩個字段:類型和製造商帶有多個關鍵字的MySQL MATCH
我想在我的數據庫中搜索匹配其相應值的記錄,並首先返回最佳匹配。
我有一個分數分配給每個字段的查詢:
SELECT id, manuf, model, type, MATCH(manuf) AGAINST('BMW') AS `score_manuf`, MATCH(type) AGAINST('Car') AS `score_type` FROM `items`
這其實工作併產生分數。
現在我要計算總得分,這是兩個分數的總和,以用於以後對結果進行排序:
SELECT id, manuf, model, type, MATCH(manuf) AGAINST('BMW') AS `score_manuf`, MATCH(type) AGAINST('Car') AS `score_type`, (score_manuf + score_type) as 'score' FROM `items`
當我運行此查詢,我得到一個錯誤說「 score_manuf「是一個未知列。
我不能在別名字段上運行算術嗎?或者也許有另一種方法來完成我想要做的事情?
哇的樣子,我不知道這意味着什麼,但它的工作。謝謝! –