我正在数据库上运行查询,我在表中有一个“坐标”列。在坐标列中的数据是在以下格式:独立1坐标列成2 Lat和长列Postgresql
{"lat":40.74,"lng":-73.98}
我需要运行查询,将显示在单独的列的经度和纬度,所以就标记为“纬度”的列显示40.74和另一列标记为“经度”的列显示73.98。
我正在数据库上运行查询,我在表中有一个“坐标”列。在坐标列中的数据是在以下格式:独立1坐标列成2 Lat和长列Postgresql
{"lat":40.74,"lng":-73.98}
我需要运行查询,将显示在单独的列的经度和纬度,所以就标记为“纬度”的列显示40.74和另一列标记为“经度”的列显示73.98。
CREATE TABLE tbPlace ( PlaceId INT, 坐标VARCHAR(255) ); (1,'“lat”:40.74,“lng”: - 73.98');插入tbPlace(placeId,coord) 。插入到tbPlace(placeId,coord) values(1,'“lat”: - 20.74,“lng”:20.98');
选择 placeId ,浇铸(SUBSTR(坐标,INSTR(坐标, 'LAT')+ 5,INSTR(坐标, '') - INSTR(坐标, 'LAT')+ 5)作为浮动)作为latitude1 ,cast(substr(coord,instr(coord,'lng')+ 5,length(coord)-instr(coord,'lng')+ 5)as longitude1 from tbPlace;
drop table tbplace;