I have data in MySQL table as below:
data_id     search_content
1           AA-6310|Taxable Goods|Double Key Turner
2           AA6310|Taxable Goods|Handi - Plug
3           AA 6310|Taxable Goods|Plug Pull Self Adhesive
4           AA4654|Taxable Goods|Tights Aid
5           AA 4600|Taxable Goods|Shoe Horn Plastic
6           M 48647|Taxable Goods|Long 
7           48647-S|Taxable Goods|Long 
But when I am searching 6310 using query then it is not returning any results, whereas 6310 is present in first three rows. 
I used following queries:
SELECT * FROM `my_tablename` WHERE MATCH (`data_index`) AGAINST ('6310')
SELECT * FROM `my_tablename` WHERE MATCH (`data_index`) AGAINST ('6310' WITH QUERY EXPANSION)
Also the same is happening with the hyphen characters as well, when I am searching 48647-S then also it is not returning any results. 
I tried to search in Boolean Mode as well, but it is not working.
What could the reason for this not returning any results, and how I can fix this?