Geocoding postgreSQL table from addresses to get latitude and longitude - postgresql

I have a table in postgresql database with my clients infos. The table contains more than 430 000 records and i should generate the latitude and longitude from the address column for any record in the table.
Please can you suggest me any solution to that. I had a look on Google maps geocoding API in Talend open studio ( using tGoogleGeocoder) but it is very limited.
Thanks in advance.

Related

How to filter house numbers of a city in OSM map

Does anyone have any documentation or know how to get all the house numbers of a city available on OpenStreetMap or Nominatim?
I've searched some documentation but it doesn't seem to work.
Or anyone have api documentation that can do it please help me.
Thanks,
There's no direct API for this that would just spit out all the addresses, or even just all the house numbers, for a specific city, at least not that I'd know off.
If you can import an OSM planet extract containing your city of choice into an osm2pgsql database it would be easy to run:
SELECT DISTINCT "addr:housenumber"
FROM planet_osm_point
WHERE "addr:city=..."
UNION
SELECT DISTINCT "addr:housenumber"
FROM planet_osm_polygon
WHERE "addr:city=..."
Overpass API could also be used, esp. with the OverPass Turbo frontend it can be given queries like "addr:housenumber=* in City_name", but by default it will return full object data and not just a single field like house number.
Raw Overpass API queries can probably do just that, but I'm not that deep into its query syntax. Maybe the examples can give you a hint towards what may work.
But the Overpass API query language is not necessarily for those faint at heart ... :O

Getting the latitude and longitude for a set of Node's

in my android application when i capture a picture the , GPS read info of my location (lat/long) , I need to get the lat/long for my town and insert it to my database , I download my region file by mean of JSOM software supported by www.openstreetmap.com the file was in osm extention , my mind tell me that i need to write a program to parse this file (raw data) and insert the whole node's (id + lat +long + other info ) to my database is that the best solution ,becasue time killing me ! .
In other word my Question is how to extract the data in file.osm
Note:every Node has it's unique ID
It's not quite clear what your actual problem is. Your smartphone should already be capable of obtaining lat and lon via the integrated GPS device.
Do you need the name of the town for the current position? In that case you can use Nominatim and run a simple reverse geocoding query.
Do you need the position of a specific town? In that case use Nominatim with a regular geocoding query.

Openstreetmap Geocoding with housenumber in query

For some geocoding data i use OpenStreetMap.
My adresses are located in germany. The big problem with openstreetmap is, that i have problems to search with my housenumber. The Documentation says that the format is
Because of this my searchquery is:
5 Glogauerstraße
The result is the following:
http://nominatim.openstreetmap.org/search/?format=xml&addressdetails=1&limit=10&q=5%20Glogauerstra%C3%9Fe
This is cool, but there are a lot of results because in germany are a lot of adresses like this. so i will add that this adress must be in BERLIN with the ZIP-Code 10999.
New search-Query:
5 Glogauerstraße, Berlin 10999
Now the result is:
http://nominatim.openstreetmap.org/search/?format=xml&addressdetails=1&limit=10&q=5%20Glogauerstra%C3%9Fe,%20Berlin%2010999
This is nice! Now there is just 1 result!
But the problem is that in this result there isnt the housenumber 5 i was searched for. So the query just "delete" the information of the housenumber.
How can i solve this search query like the way i need it ? Its a big confusing why the openstreet map just delete this information ...
Correct me if I'm wrong but apparently (after searching for the address in the OSM map) OpenStreetMap does not know the housenumbers in this street.
It can correctly geocode this address to approximately accurate coordinates, it is just not accurate enough to know where the house 5 is.
You could possibly try Google Maps services, in my experience it is more accurate in most places.

Separate OSM postgis streetdata that contains data for markers in center of street

I'm kinda new to Django and OSM but after hours of googling I didn't find my answer.
I have set up my own OSM tileserver which runs on a postgis database (psql). The tile server runs fine. Now I want to do the following.
I want to add markers in the center of each street in a specific area. I want add all these markers in the database on forehand, because the data is already there (nodes,lines,way etc.) and I want to give streets additional values. This means that i have to add all the streets to my database. In my head these tables must at least contain:
Name of street, City, Country, Lon, lat (of the center of the street)
This way I can call-up the markers and values from the database. Is this the right way of thinking, and how do I get this street data from my postgis db to this new table with the right relations and coordinates?
I hope someone could help me.

Find data near to user location with split data in Xcode

I'm trying to figure out how i can find data (from JSON) near to the users location on iPhone.
My input consists out of 2 parts, so in order to get to the city and address, I have to get an ID from the province where the user is located.
Province (with ID to go to all Json data of the province)
Data
(Every piece of data has a name, city, address, ...)
Is it possible to find the province where the user is located. Then pass its ID to search the list of data for near to the user located events by reversing all the addresses and cities into coordinates,...?
I'm pretty new to location based programming! Any help is appreciated!
Thank you very much!
The first thing you'll want to do is add CoreLocation to your app. This tutorial shows you how to do that. This will give you the latitude and longitude of your current location.
The next thing you'll want to do is reverse geocode your coordinates. One common API for this is the Google Geocoding API. That will give you your province name.