關於ibatis動態拼湊查詢條件失敗,咋回事?大蝦求指教!

    今天忽然接到客服要對如今系統要增長一塊查詢功能的需求,原來信心滿滿的跟她說稍等幾分鐘就好,但那結果是沒有預想到的,等了老半天還沒弄好,真是被ibatis玩轉了,嗚嗚…… sql

    需求以下: 給出一個號碼,能夠直接查出它是否在網,或是直接號碼+(在網/退訂)組合查詢。 後端

    實現效果:第一種查詢OK沒有問題,但第二種查詢就出問題了。在網/退訂我用的是一個下拉菜單控件作爲輸入,後端把它和手機號碼寫進一個map數組傳入到ibatis動態拼湊中去,結果問題就出現了,知足後面那個(在網/退訂)條件的SQL語句死活不出來,檢查了好幾遍代碼也沒發現有問題呀,鬱悶.......... 數組

ibatis xml代碼以下: 調試

<dynamic prepend="WHERE">
    <isNotEmpty property="USER_MOBILE">
        user_mobile = #USER_MOBILE#
    </isNotEmpty>
    <isNotEmpty prepend=" AND " property="USER_TYPE">
        <isEqual compareValue="2">
            ( pro_klys = 'Y' OR pro_yybd = 'Y' OR pro_kxye = 'Y' )
        </isEqual>
        <isEqual compareValue="3">
            ( pro_yybd = 'N' AND pro_kxye = 'N' AND pro_klys = 'N' )
        </isEqual>
    </isNotEmpty>
</dynamic>

調試窗口輸出狀況是:  code

SELECT * FROM user_info WHERE user_mobile = ?

後面的當user_type = 2或3條件的SQL條件就沒有拼湊了,這是怎麼回事呢? xml

有人誰遇到過這樣的問題呢?求指教,謝謝。 class

相關文章
相關標籤/搜索