在这里,我有两个表,并希望在某些受限条件下选择数据,
这是地震列表EQLIST
TIME_ LATITUDE LONGITUDE MAG EQ_NUM
31-12月-10 04.30.54.520000 下午 0.663 -26.0450000 5.5 1
31-12月-10 04.11.03.180000 上午 -19.209 167.9020000 5.1 2
30-12月-10 11.47.03.930000 下午 -31.830 -178.1350000 5.0 3
30-12月-10 09.22.30.350000 下午 -19.984 168.3530000 5.0 4
30-12月-10 02.36.54.560000 下午 -10.819 165.3760000 5.6 5
... ...
这是数据表BIGDATA
UT GEOC_LAT GEOC_LONG LOCAL_TIME KP
01-1月 -06 03.12.51.708000 下午 -32.3847389221191 110.833557128906 22.6032676696777 1.66666666667
01-1月 -06 04.59.07.351000 下午 -3.26855063438416 79.5669708251953 22.2898406982422 1.66666666667
01-1月 -06 05.10.00.245000 下午 36.1917686462402 70.4237747192383 21.8616523742676 1.66666666667
01-1月 -06 11.30.08.354000 上午 -50.4215278625488 331.457702636719 9.59950065612793 1
01-1月 -06 09.07.51.459000 下午 -8.55202579498291 195.695846557617 10.1773509979248 1.66666666667
... ...
条件
我想从BIGDATA
的每次地震中,从EQLIST
中选择满足以下条件的数据:
地震(EQLIST.TIME_
(TIMESTAMP(6)))前2天(48小时)
半径内的距离,并且可以根据以下公式计算半径
其中M是震级(EQLIST.MAG
(NUMBER))
夜间数据,(BIGDATA.LOCAL_TIME
(数字)是从下午6点到第二天早上6点)
BIGDATA.KP
(NUMBER)<3
计算列
我也想:
计算震中(EQLIST.LATITUDE
(NUMBER),EQLIST.LONGITUDE
(NUMBER))和数据位置(BIGDATA.GEOC_LAT
(NUMBER),BIGDATA.GEOC_LONG
之间的距离(NUMBER))。
计算地震(EQLIST.TIME_
(TIMESTAMP(6)))和数据(BIGDATA.UT
(TIMESTAMP(6)))之间的间隔时间(小时)。
保留等效项数(EQLIST.EQ_NUM
(NUMBER))。
希望您能理解我的意思,谢谢。
Oracle Spatial或Oracle Locator可能会有所帮助,我相信我可以使用它们。对此方向的任何建议将不胜感激。