こんにちは私はpostgresql database.Butで緯度と経度で最も近い場所を見つけようとしています。postgresqlの緯度と経度で最も近い場所を見つける
ERROR: column "distance" does not exist
LINE 1: ...))) AS distance FROM station_location HAVING distance <...
^
********** Error **********
ERROR: column "distance" does not exist
SQL state: 42703
Character: 218
CREATE TABLE station_location
(
id bigint NOT NULL DEFAULT nextval('location_id_seq'::regclass),
state_name character varying NOT NULL,
country_name character varying NOT NULL,
locality character varying NOT NULL,
created_date timestamp without time zone NOT NULL,
is_delete boolean NOT NULL DEFAULT false,
lat double precision,
lng double precision,
CONSTRAINT location_pkey PRIMARY KEY (id)
)
SELECT *,(3959 * acos(cos(radians(6.414478)) * cos(radians(lat)) * cos(radians(lng) - radians(12.466646)) + sin(radians(6.414478)) * sin(radians(lat)))) AS distance
FROM station_location
HAVING distance < 5
ORDER BY distance
LIMIT 20;
id bigint NOT NULL DEFAULT nextval( 'location_id_seq' :: regclass)を実行すると、 'id bigserial'に書き直してください - 時間を節約できます –