<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    從制造到創造
    軟件工程師成長之路
    posts - 292,  comments - 96,  trackbacks - 0
    通過T-SQL,我們左聯(內聯、右連類似)的查詢語法如下:

    -- 通過 InsuredIn 查詢 累計類別 

    select * from ris.re_master as rm left join ris.re_detail as rd on rm.REINSURANCE_NO=rd.REINSURANCE_NO
        
    where rd.INSURED_ID='A120670116'
        
    order by rm.POLICY_NO asc, rm.POLICY_SEQNO asc
        ;


    但是使用 HSQL 查詢數據庫時,我們要改為:

    from ReMaster as rm left join rm.reDetails as rd 


    Hibernate 會自動找相同的鍵,不用on,而且關聯表要寫成:rm.reDetails


    /**
     * description: 通過被保人號碼查詢再保明細
     * 
     * 
    @param insuredId
     *            被保人身份證號 String
     * 
    @return List 結果列表
     * 
    @throws DbAccessException
     *             數據庫異常
     
    */
    public List selectReMasterDetail(String insuredId) 
        
    throws DbAccessException {
        
    if (DEBUGLOG.isDebugEnabled()) {
            DEBUGLOG.debug(
    "[ReDetailDao]"
                    
    + "[Function:selectReMasterDetail][Begin]");
        }
        StringBuffer hqlRd 
    = new StringBuffer();

        hqlRd.append(
    " from ReMaster as rm left join rm.reDetails as rd " +
                
    "where 1=1");

        
    if (insuredId != null) {
            hqlRd.append(
    " and rd.insuredId = '" + insuredId + "'");
        }
        
        hqlRd.append(
    " order by rm.policyNo asc, rm.policySeqno asc");

        
    if (DEBUGLOG.isDebugEnabled()) {
            DEBUGLOG.debug(
    "[ReDetailDao][Function:selectReMasterDetail][End]");
        }
        
        
    return this.createQuery(hqlRd.toString());
    }

    在Service層進行調用:
    // 通過 InsuredId 查詢ReMaster檔和ReDetail檔
    rmdList = rdDao.selectReMasterDetail(iqVo.getInsuredId());

    取List中的對象時用對象數組接,因為返回的是兩個對象:



        Object[] obj = null;
        ReDetail rd 
    = null;
        ReMaster rm 
    = null;
        
    int rmdSize = 0;
        
    if (rmdList != null) {
            rmdSize 
    = rmdList.size();
        }
        
    for (int rmdIndex = 0; rmdIndex < rmdSize; rmdIndex++) {
            obj 
    = new Object[2];
            obj 
    = (Object[])rmdList.get(rmdIndex);
        
            rm 
    = new ReMaster(); // 用於存儲公司別信息
            rd = new ReDetail();
            rm 
    = (ReMaster) (obj[0]);
            rd 
    = (ReDetail) (obj[1]);

    這樣就可以處理得到的ReMaster對象和ReDetail對象了。
    posted on 2007-07-18 11:25 CoderDream 閱讀(2466) 評論(1)  編輯  收藏 所屬分類: 經驗點滴

    FeedBack:
    # re: HSQL 中的左聯查詢
    2009-04-25 10:19 | meidao
    正好用到這里,學習了,3Q  回復  更多評論
      

    <2007年7月>
    24252627282930
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

    常用鏈接

    留言簿(9)

    我參與的團隊

    隨筆分類(245)

    隨筆檔案(239)

    文章分類(3)

    文章檔案(3)

    收藏夾(576)

    友情鏈接

    搜索

    •  

    積分與排名

    • 積分 - 459735
    • 排名 - 114

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 免费在线精品视频| 亚洲国产天堂久久久久久| 亚洲AV无码精品无码麻豆| 中文字幕在线免费视频| 亚洲综合图色40p| a级黄色毛片免费播放视频| 亚洲AV午夜成人影院老师机影院| 成人国产精品免费视频| 国产亚洲精品a在线无码| 99免费观看视频| 国产成人精品日本亚洲专| 精品国产精品久久一区免费式| 在线a亚洲老鸭窝天堂av高清| 韩国二级毛片免费播放| 国产亚洲日韩在线a不卡| 国产a v无码专区亚洲av| 美女视频黄的免费视频网页| 中文字幕亚洲综合久久2| 4虎1515hh永久免费| 亚洲精华国产精华精华液 | 亚洲女人影院想要爱| 日本免费一区二区在线观看| 亚洲色大成WWW亚洲女子| 波多野结衣免费视频观看| 中文永久免费观看网站| 亚洲精品人成电影网| 在线观着免费观看国产黄| 美女网站在线观看视频免费的| 久久精品国产96精品亚洲| 24小时日本在线www免费的| 羞羞视频免费网站含羞草| 久久综合图区亚洲综合图区| 成人免费无码视频在线网站| 黄色大片免费网站| 久久精品夜色国产亚洲av| 国产精品视频永久免费播放| 色多多www视频在线观看免费| 久久夜色精品国产嚕嚕亚洲av| 免费三级毛片电影片| igao激情在线视频免费| 亚洲电影免费观看|