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

关于SQL语句

答題得分者是:Fishman
liangzai
初階會員


發表:77
回覆:91
積分:33
註冊:2004-08-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-08-03 15:57:36 IP:218.20.xxx.xxx 未訂閱
请问各位大大: select a.deptsect,descrp,a.empno,lastname,givenname,chinesename,c.voucherno,c.code,b.model,unitprice,sum(c.orderqty) as sqty,sum(b.unitprice*c.orderqty) as amount from EMGT.HR_MASTER a,EMGT.MODEL_MASTER b,EMGT.SALES_ENTRY c where c.empno=a.empno and c.brand=b.brand and c.code=b.code 1.and c.code between '002' and '003' 2.and c.code='002' Group by a.deptsect,descrp,a.empno,lastname,givenname,chinesename,c.voucherno,c.code,b.model,unitprice order by a.deptsect,a.empno,c.voucherno,c.code 如果我使用1所指的语句(and c.code between '002' and '003' ),可以得到数据,可是如果我使用2所指的语句(and c.code='002')就得不到数据,为什么?
liangzai
初階會員


發表:77
回覆:91
積分:33
註冊:2004-08-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-08-03 16:10:48 IP:218.20.xxx.xxx 未訂閱
奇怪,这样又可以得到数据: select a.code,model,b.brand,a.unitprice,sum(b.orderqty) as sqty,sum(b.orderqty*a.unitprice) as amount from EMGT.MODEL_MASTER a,EMGT.SALES_ENTRY b where b.code=a.code and b.brand=a.brand and a.code='002' group by a.code,model,b.brand,a.unitprice order by b.brand,a.code ????
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-08-03 16:12:13 IP:210.65.xxx.xxx 未訂閱
Hi liangzai,    我猜測應該是 code 型態為 Char(??),系統將會自動於右側補上空白,更改為 (and rtrim(c.code)='002') 試試! ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
liangzai
初階會員


發表:77
回覆:91
積分:33
註冊:2004-08-13

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-08-03 16:40:39 IP:218.20.xxx.xxx 未訂閱
hi,fishman 谢谢你的指教!问题解决了,顺便问一下,为什么between...and可以,直接=不可以呢?而我第二条回应中那种情况又可以?奇怪?
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-08-04 08:26:08 IP:210.65.xxx.xxx 未訂閱
Hi liangzai,
1.
因為
'002     ' between '002' and '003'
但是'002     ' <> '002'    2.可否提供你資料庫種類、Table 架構與資料內容以方便測試?
有可能是 c.empno 問題
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
liangzai
初階會員


發表:77
回覆:91
積分:33
註冊:2004-08-13

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-08-04 15:01:35 IP:218.20.xxx.xxx 未訂閱
hi,fishman 我使用的是oracle9i, table1:EMGT.HR_MASTER(empno,name,deptsect); table2:EMGT.MODEL_MASTER(code,brand,model,unitprice,init_qty,curr_qty); table3:EMGT.SALES_ENTRY(voucherno,empno,brand,code,orderqty), 其中empno,code,voucherno都是varchar2类型。
系統時間:2024-06-28 18:30:50
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!