mysql select in multiple fields
In my search I used autosuggest. The problem now is I have to search the value in multiple fields such as firstname,middlename,lastname,caption etc. How to identify that the match string will belong on specific field name.
let say i have table
firstname middlename lastname caption
james kelly tow handsome
timy john fung fearless
hanes bing ken great
in my input field once I typed "j" I should select and ouput
james
john greatCurrently I just output the firstname so instead of the above result I came out like below which is not good.
james
timy hanesIt is possible? Any help would greatly ap开发者_Go百科preciated.
You could do something like:
SELECT IF(first LIKE 'j%',
first,
IF(middle LIKE 'j%',
middle,
IF(last LIKE 'j%',
last,
''))) AS name
FROM mytable
HAVING name <> '';
Just OR them together like so:
SELECT * FROM yourTable WHERE firstname LIKE '%j%' OR lastname LIKE '%j%' -- ...
This shouts for a fulltext search.
Check out the mysql entries about that!
精彩评论