線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:853
推到 Plurk!
推到 Facebook!

SQL语句难题(ORACLE),如何动态形成条件

 
michaelf
一般會員


發表:2
回覆:0
積分:0
註冊:2006-09-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-09-19 10:59:29 IP:202.97.xxx.xxx 未訂閱


如图:一个单位有n(n<20)个人,每个人有n条记录,每条记录有一个xzbs和jzbs.


当jzbs = 1时,此条纪录被选出,当此人所有记录的jzbs is null时,xzbs = 1 的纪录被选出。


(即一个人jzbs =1 xzbs =1 条件同时满足时,jzbs =1 的记录被选出,不存在jzbs = 1 的纪录


则xzbs =1的纪录被选出,jzbs =1 xzbs =1 可存在于同一条记录中)


问题:在where子句里如何动态判断呢?


where........



and.....


and h.jzbs = 1


上图中查询结果的写法为 and (decode(nvl(h.jzbs,0),h.xzbs,h.jzbs) =1


同一个人出现两遍,不对,因为把h.jzbs = 1和h.xzbs = 1都选了出来。

------
三岔口
系統時間:2024-06-02 1:39:26
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!