[GIS] How to select from geometry column in postgresql

postgispostgresqlsql

I've got a table which it has a geometry column filed by some point (ex. "POINT Z (116.309627 39.991285 148)").
now I want to select point's id from the table. I wrote follow sql Code but I force an error:

ERROR: Operation on two GEOMETRIES with different SRIDs SQL state:
XX000

select id from database
    where (point_lat_lon = 'POINT Z (116.309627 39.991285 148)');

Best Answer

You need to cast the string to a geometry then set its SRID to match the geometry column's SRID.

select id 
from database 
where point_lat_lon = st_setsrid('POINT Z (116.309627 39.991285 148)'::geometry, 
    ST_SRID(point_lat_lon));
Related Question