กระทู้เก่าบอร์ด อ.สุภาพ ไชยา
301 6
URL.หัวข้อ /
URL
สอบถามอาจารย์สุภาพ เรื่องกรองนาทีครับ
ผมถามอาจารย์แล้วครั้งหนึ่งเรื่อง DateDiff ครับ ต้องขอบคุณอาจารย์มากเลยครับผมทำได้แล้วครับผม แต่ผมอยากให้อาจารย์ช่วยเหลืออีกครั้งครับ คือเวลากรองข้อมูลจำนวนชั่วโมงและนาทีครับ มันไม่สามารถกรองได้ครับ ผมใช้ >=4 ในช่องเงื่อนไขแต่มันไม่ออกมาครับ และเมื่อใส่ >=4 โปรแกรมจะให้ใส่ parameter ครับ รบกวนอาจารย์อีกครั้งนะครับว่าต้องใช้วิธีการกรองอย่างไร ขอบพระคุณอาจารย์มากครับ
6 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R03526
ผมลองดูแล้วครับ >=240 พอใส่ไปแล้วเปิด Query จะถามว่า DateStart ให้ใส่ค่า และพอ Enter จะถามต่ออีกว่า DateEnd ให้ใส่ค่า ครับพอ Enter อีกที ผลออกมาจะไม่มีการกรองใดๆ ครับ รบกวนอาจารย์อีกครั้งนะครับ
3 @R03527
ต้องแทน DateStart และ DateEnd ด้วยชื่อฟีลด์ที่เก็บวันเวลาเริ่มต้น และวันเวลาสิ้นสุดครับ
4 @R03531
ผมลองแล้วครับ ผมใช้ เป็น DT และ DT1 แต่ก็ไม่สามารถกรองได้ครับ ผมไม่ทราบว่า ตรง เงื่อนไขเวลา Query >=240 นั้นต้องแปลงเลขดังกล่าวเป็นของเวลาหรือเปล่าครับ รบกวนอีกทีครับอาจารย์
5 @R03532
ได้ลองเปลี่ยน
MyDiff: DateDiff("n", [DT], [DT1])
Criteria: >=240
หรือยังครับ
ลองคัดลอกเอา SQL Statement มาทั้งหมดดูครับ
เมื่อเปิด Query ในโหมด Design แล้วให้ไปที่ View>SQL แล้วคัดลอกมาโพสต์ที่นี่ดูครับ
MyDiff: DateDiff("n", [DT], [DT1])
Criteria: >=240
หรือยังครับ
ลองคัดลอกเอา SQL Statement มาทั้งหมดดูครับ
เมื่อเปิด Query ในโหมด Design แล้วให้ไปที่ View>SQL แล้วคัดลอกมาโพสต์ที่นี่ดูครับ
6 @R03540
SELECT Event.Dateoutage, Event.Timeoutage, [Dateoutage]+[Timeoutage] AS DT, [Date1]+[Time1] AS DT1, DateDiff("n",[DT],[DT1])\60 AS DT2, DateDiff("n",[DT],[DT1]) Mod 60 AS DT3, IIf([DT2]=0,[DT3],[DT2] & "." & [DT3]) AS DT4, Event.SubID, Event.FeederID, Event.ComID2, Event.LostLoad, owner.owner AS Expr2, causetype.typename, causedata.causedata, wheather.wheather, Doing.Dodata, pea.Br_name, equipstatus.Caption, EventMaintain.Date1, EventMaintain.Time1, EventMaintain.Additional, EventCause.Known, IIf([Pha_A] Like "none","","A") AS phaseA, IIf([Pha_B] Like "none","","B") AS phaseB, IIf([Pha_C] Like "none","","C") AS phaseC, IIf([Pha_G] Like "none","","G") AS Ground, [phaseA] & [phaseB] & [phaseC] AS Expr6, Event.EventID, IIf([comstatus] Like "EC7","fuse","none") AS DF, cust.Expr1, IIf([known] Like Yes,"·ÃÒºÊÒà˵Ø","äÁè·ÃÒºÊÒà˵ØÊѹ¹ÔÉ°Ò¹à¡Ô´¨Ò¡") AS known1, [known1] & " à¡Ô´¨Ò¡" & [Causedata].[Causedata] & [Action1] AS known2, HwAction.HwAction AS Expr7, Mid([HwAction],InStr([HwAction]," ")+1) AS Action, IIf([Action] Like " äÁèÁÕ¡ÒêÓÃØ´","",[HwName] & " " & [TransSize] & " " & [TransSubfix] & " " & [Material] & [Action]) AS Action1, HwAction.HwName AS Expr8, EventCause.TransSize, EventCause.TransSubfix, EventCause.Material
FROM (((equipstatus INNER JOIN ((((wheather INNER JOIN ((causetype INNER JOIN (Event INNER JOIN EventCause ON Event.EventID = EventCause.EventID) ON causetype.typecode = EventCause.CauseType) INNER JOIN causedata ON EventCause.Causedata = causedata.causecode) ON wheather.code = Event.Weather) INNER JOIN EventMaintain ON Event.EventID = EventMaintain.EventID) LEFT JOIN Doing ON EventMaintain.Domatain = Doing.Docode) LEFT JOIN pea ON Event.peacode = pea.Br_code) ON equipstatus.code = Event.ComStatus) INNER JOIN cust ON Event.EventID = cust.EventID) INNER JOIN HwAction ON EventCause.Causedetail = HwAction.ActionCode) INNER JOIN owner ON EventCause.OwnerCause = owner.code
WHERE (((IIf([DT2]=0,[DT3],[DT2] & "." & [DT3]))>=4))
ORDER BY Event.Dateoutage;
FROM (((equipstatus INNER JOIN ((((wheather INNER JOIN ((causetype INNER JOIN (Event INNER JOIN EventCause ON Event.EventID = EventCause.EventID) ON causetype.typecode = EventCause.CauseType) INNER JOIN causedata ON EventCause.Causedata = causedata.causecode) ON wheather.code = Event.Weather) INNER JOIN EventMaintain ON Event.EventID = EventMaintain.EventID) LEFT JOIN Doing ON EventMaintain.Domatain = Doing.Docode) LEFT JOIN pea ON Event.peacode = pea.Br_code) ON equipstatus.code = Event.ComStatus) INNER JOIN cust ON Event.EventID = cust.EventID) INNER JOIN HwAction ON EventCause.Causedetail = HwAction.ActionCode) INNER JOIN owner ON EventCause.OwnerCause = owner.code
WHERE (((IIf([DT2]=0,[DT3],[DT2] & "." & [DT3]))>=4))
ORDER BY Event.Dateoutage;
Time: 0.1537s
ให้สร้างฟีลด์เพิ่มขึ้นมาอีก 1 ฟีลด์ เพื่อแสดงผลลัพธ์ของผลต่างของเวลา แล้วใส่ช่อง Criteria ตามเงื่อนไขที่ต้องการกรอง
MyDiff: DateDiff("n",[DateStart],[DateEnd])
Criteria: >=240