Map bounding box

Hi, I would really like any suggestions on the following concerning performance…:
I have 1.000.000 locations with:

  • a name
  • a latitude
  • a longitude
  • a score
    I want to:
  • select all locations on a particular (google)map. So a latitude BETWEEN (… AND …) AND longitude BETWEEN (… AND …)
  • fulltext match name. So name MATCHES (…)
  • ORDER BY score
    How would I get the best performance? What indexes should I create? Should I split the data in two tables and then JOIN? Or should I put everything together in one table?
    ANY help would be great!!