全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1153
推到 Plurk!
推到 Facebook!

如何下這情況之sql ?

答題得分者是:h@visli
ry_lee
高階會員


發表:368
回覆:251
積分:123
註冊:2002-03-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-09-27 00:22:17 IP:220.131.xxx.xxx 訂閱
我有兩個 table,主表是order,有order_no,cust_id,order_date,order_total四欄位,明細表有order_no,part_no,qty,price 四欄位,主表與明細表是以order_no欄位一對多連結,
order_no,cust_id,order_date,order_total order_no ,part_no ,qty ,price
001 c001 96.1.1 100 001 p01 1 50
002 c002 96.1.5 50 001 p02 1 50
003 c003 96.2.10 150 002 p02 1 50
///////////////////////////////////////////////////////////////////////////////// 003 p01 1 50
//////////////////////////////////////////////////////////////////////////////// 003 p02 1 50
//////////////////////////////////////////////////////////////////////////////// 003 p03 5 10
我下一子查詢 select * from 主表 where order_no in (select order_no from 明細表 where part_no in "p02,p03")
結果ok
我下一子查詢 select * from 主表 where order_date >=96.2.1 and order_no in (select order_no from 明細表 where part_no in "p02,p03")
結果失敗,將時間條件放在子查詢亦同,子查詢改成表結合亦同,我下這sql之目的是要查那些在特定時間之訂單有訂購某商品

我是ado存取access 2000之資料庫
編輯記錄
ry_lee 重新編輯於 2007-09-27 00:23:47, 註解 無‧
ry_lee 重新編輯於 2007-09-27 00:25:33, 註解 無‧
ry_lee 重新編輯於 2007-09-27 00:26:28, 註解 無‧
ry_lee 重新編輯於 2007-09-27 00:27:12, 註解 無‧
ry_lee 重新編輯於 2007-09-27 00:27:51, 註解 無‧
ry_lee 重新編輯於 2007-09-27 00:28:21, 註解 無‧
ry_lee 重新編輯於 2007-09-27 00:29:06, 註解 無‧
ry_lee 重新編輯於 2007-09-27 01:01:48, 註解 無‧
h@visli
資深會員


發表:103
回覆:429
積分:431
註冊:2004-02-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-09-27 09:59:25 IP:219.134.xxx.xxx 未訂閱
建議你把你的Access數據文件傳上來.
------
------------------------
博采眾家之長,奉獻綿薄之力
------------------------
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-09-27 17:04:34 IP:61.67.xxx.xxx 未訂閱
我覺得問題出在你的   ORDER_DATE>=96.2.1 的格式識別上,沒看過你的Access架構,不過建議你利用其他字串型的欄位換掉 order_date 的語法看看是否ok, 如果ok 那就可以確定你引用的96.2.1格式有問題!
ry_lee
高階會員


發表:368
回覆:251
積分:123
註冊:2002-03-19

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-09-30 21:29:32 IP:220.143.xxx.xxx 訂閱

[code c#]
請在此區域輸入程式碼
[/code]
我知道原因何在了
adodataset1.parameters.parabyname('date').value:=DateTimePicker1.date//結果錯誤

adodataset1.parameters.parabyname('date').value:=DateTimePicker1.datetime//結果正確

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