実行する必要がある非常に複雑なクエリがありますが、それを達成する方法について頭を悩ませているように見えないので、誰かが私を助けてくれることを願っています.
2 つのクエリを 1 つのクエリにする必要があります。
私の最初のクエリはこれです:
select * from table1 t1
join table2 t2 on t2.outcode = t1.post_code
これにより、次のような郵便番号LAT
を含む結果が生成されます。LONG
Name Postcode Lat Long
Taylor CB8 53.829517 -1.780320
これらは、テスト用の単なるダミー値です。
私の次のクエリはこれです
SELECT * FROM (
SELECT t3.location_name,
calc_distance(t3.lat, t3.lng, t2.lat,t2.lng) as distance
FROM table3 t3, table2 t2
where t2.outcode = :postcode
order by distance) i
where rownum = 1
calc_distance
ポイントのLATとLONGに基づいて距離を計算する機能です
それを置き換える:postcode
とCB8
、これらの結果が生成されます
Location_name Distance
NR Location 56.6
私が何とかする必要があるのは、単一のクエリから次の出力を生成することです。
Name Postcode Lat Long Nearest_Loc Distance
Taylor CB8 53.829517 -1.780320 NR Location 56.6
可能であれば、これをどのように作成するかを一生考えることはできません。
誰でも助けることができますか?