當我將$file_name_keyword
設置爲鋼鐵俠3時,它也將鋼鐵俠2的結果返回給我,反之亦然,它甚至不是問題,但如何使它返回第一順序的所有鋼鐵俠3條目和那麼鋼鐵俠2? 請注意ORDER BY票 - 票被設置爲0,現在所有條目都相同。Mysql搜索匹配和訂單
SELECT *,MATCH(file_name_keyword) AGAINST('$file_name_keyword')
FROM `uploaded`
WHERE (MATCH(file_name_keyword) AGAINST('$file_name_keyword')
OR file_name_keyword REGEXP '.*($file_name_keyword).*')
AND active = '1'
ORDER BY `votes`
返回我像
Iron.Man.2. Multi5.PAL.Nintendo.DS .By.Gamolama.torrent
Iron.Man.3.2013.720p.BluRay.x264.YIFY.mp4
Iron Man 2 Multi5 PAL Nintendo DS By Gamolama torrent
Iron Man 3 2013 720p BluRay x264 YIFY mp4
Iron Man 2 2010 1080p BDRip AAC x264-tomcat12 torrent
iron man 2 wallpaper-1920x1080 jpg
在此先感謝,這是我結束了和不知道如何改進它。
表結構[MyISAM數據]所有的
id - int(11)
file_name - varchar(255) - server generated
file_size - int(11)
file_ext - varchar(255)
file_name_keyword - varchar(255) - user generated e.g. original file name
upload_datetime - datetime
votes - int(11)
active - int(1)
什麼樣的SQL是這樣嗎? MATCH不是一項標準功能 - 如果您爲sql的正確版本添加標籤,您可能會得到更好的答案。 SQL Server或MySQL,Oracle等... – bhs
@bhs我認爲這是MySQL,但OP應該用他正在使用的RDBMS標記他的問題。 –
添加mysql標籤,因爲那些似乎是與mysql有關的特定功能 – UnhandledExcepSean