老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊(cè)、服務(wù)器等服務(wù)

oracle存儲(chǔ)過(guò)程---獲取數(shù)據(jù)庫(kù)中到指定經(jīng)緯度距離的坐標(biāo)

新項(xiàng)目需求:

堅(jiān)守“ 做人真誠(chéng) · 做事靠譜 · 口碑至上 · 高效敬業(yè) ”的價(jià)值觀,專業(yè)網(wǎng)站建設(shè)服務(wù)10余年為成都公路鉆孔機(jī)小微創(chuàng)業(yè)公司專業(yè)提供企業(yè)網(wǎng)站制作營(yíng)銷網(wǎng)站建設(shè)商城網(wǎng)站建設(shè)手機(jī)網(wǎng)站建設(shè)小程序網(wǎng)站建設(shè)網(wǎng)站改版,從內(nèi)容策劃、視覺(jué)設(shè)計(jì)、底層架構(gòu)、網(wǎng)頁(yè)布局、功能開(kāi)發(fā)迭代于一體的高端網(wǎng)站建設(shè)服務(wù)。

    結(jié)合百度地圖,在地圖中指定一個(gè)地點(diǎn),獲取此地點(diǎn)周圍1km范圍內(nèi)所有數(shù)據(jù)庫(kù)中存的單位的地點(diǎn)和信息標(biāo)記在地圖上。于是初寫(xiě)了一把oracle的存儲(chǔ)過(guò)程,純靠摸索寫(xiě)的。

后臺(tái)需要的函數(shù)如下:

首先,計(jì)算圓弧函數(shù)

CREATE OR REPLACE FUNCTION RAD(d number) RETURN NUMBER
is
PI number :=3.141592625;

begin
return  d* PI/180.0;
end ;

然后,計(jì)算距離函數(shù)

CREATE OR REPLACE FUNCTION GetDistance(lat1 number,
                                       lng1 number,
                                       lat2 number,
                                       lng2 number) RETURN NUMBER is
  earth_padius number := 6378.137;
  radLat1      number := rad(lat1);
  radLat2      number := rad(lat2);
  a            number := radLat1 - radLat2;
  b            number := rad(lng1) - rad(lng2);
  s            number := 0;
begin
  s := 2 *
       Asin(Sqrt(power(sin(a / 2), 2) +
                 cos(radLat1) * cos(radLat2) * power(sin(b / 2), 2)));
  s := s * earth_padius;
  s := Round(s * 10000) / 10000;
  return s;

end;

接下來(lái)是我自己寫(xiě)的存儲(chǔ)過(guò)程:

CREATE OR REPLACE PROCEDURE distance_maintunit(p_cur out sys_refcursor, center_lat in number , center_lng in number)
IS
v_muids VARCHAR(200);
v_distance NUMERIC(9,6);
BEGIN

  FOR L_RECORD IN (select * from M_MAINTENACEUNIT)
LOOP
    SELECT GetDistance(L_RECORD.Lat,L_RECORD.Longitude,center_lat,center_lng) INTO v_distance FROM dual;
    /*dbms_output.put_line('distance:' || v_distance);*/
    IF (v_distance <=1)
      THEN
        v_muids:= v_muids || L_RECORD.muid || ','; 
    END IF;
END LOOP;
    v_muids:= v_muids || '-1';
    
    dbms_output.put_line(v_muids);
    
    open p_cur for 'select * from m_maintenaceunit where muid in ('||v_muids||')';

EXCEPTION
   WHEN OTHERS THEN
       ROLLBACK;
    dbms_output.put_line(SQLERRM);

END;

由于使用mybatis,所以service調(diào)用如下:

	@Override
	public List getMaitunitByProcedures(Double lat, Double lng) {
		
		Map map=new HashMap();
		
		map.put("lng", lng);
		map.put("lat", lat);
		
		try {
			geoDao.getMaitunitByProcedures(map);
		}catch(UncategorizedSQLException e) {
//			System.out.println(e);
			e.printStackTrace();
		}
		
		@SuppressWarnings("unchecked")
		List siteList=(List)map.get("maintunits");
		return siteList;
		
	}

這里跟我之前轉(zhuǎn)載的那篇關(guān)于oracle存儲(chǔ)過(guò)程的文章有關(guān)聯(lián)(如何調(diào)用一個(gè)返回集合的存儲(chǔ)過(guò)程)

mapper.xml中的調(diào)用:


	 

	

dao中調(diào)用:

public List getMaintUnitList(@Param("lng") Double lng, @Param("lat") Double lat);

由于第一次寫(xiě)oracle存儲(chǔ)過(guò)程,代碼只是實(shí)現(xiàn)了功能,有待改進(jìn)。

參考:http://www.storyday.com/wp-content/uploads/2008/09/latlung_dis.html

http://blog.csdn.net/iw1210/article/details/9164573

http://www.cnblogs.com/microsoft-jiang/archive/2008/07/24/1250644.html


分享文章:oracle存儲(chǔ)過(guò)程---獲取數(shù)據(jù)庫(kù)中到指定經(jīng)緯度距離的坐標(biāo)
分享鏈接:http://www.xueling.net.cn/article/pjejpg.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 久久精品国产亚洲aⅤ不卡 久草香蕉依人在线 | 综合色网站 | 视频国产激情 | 成年免费视频播放网站推荐 | 美女让男人桶爽免费视频 | 人妻少妇久久中文字幕 | 国产色婷婷精品综合在线 | 高清一区在线 | 国产精品vⅰdeoXXXX国产 | 蜜臀av一区二区三区 | 完全着衣の爆乳お姉さんが | 91精品视频导航 | 久久网伊人 | 免费国产一级淫片 | 成年人射精的黄色视频网站 | 精国产品一区二区三区四季综 | 国模无码大尺度一区二区三区 | 日本亚洲中文字幕不卡 | 国产品牌情久久久久久久男 | 亚洲精品成人久久AV | 中文字幕不卡在线观看 | 久久免费公开视频 | 久久超碰免费 | 亚洲а∨天堂久久精品2021 | 奇米在线7777 | 日韩在线观看免费一二三区 | 免费播放黄色片 | 亚州中文免费 | 伊人福利视频 | 一级女性生活片 | 久久久久久久91 | 国产精品午夜小视频观看 | 超碰97在线看 | 性高湖久久久久久久久aaaaa | 女人被躁到高潮嗷嗷叫游戏 | 国产高潮白浆喷水 | 国产精品久久久久久久久免费看 | 国产高清视频在线播放 | 国产小视频免费观看 | 欧美午夜精品久久久久久人妖 | jzjzz成人免费视频 |