검색

2012-06-23 3 views
3

나는 테이블
TBL 입학에 다음과 같은 데이터가 : 나는 쿼리를 작성하고자하는 날짜와 시간은 두 개의 서로 다른 분야이며, dd/mm/yyyy 형식검색

AdmitDate   AdmitTime 
1/6/2012   00:00 
3/6/2012   10:00 
3/6/2012   19:00 
4/6/2012   20:38 
5/6/2012   21:00 
7/6/2012   03:00 

을 저장을 2012 년 3 월 6 일 07:00:00에서 5/6/2012 06:59:59 사이의 모든 레코드를 표시합니다.

쿼리에는 사용자가 입력 한 '날짜'옵션도 있어야합니다 (예 : & 시간은 첫날 오전 7 시부 터 오전 6시 59 분까지의 고정 간격이 될 수 있습니다). 예를 들어 PARAMETERS를 사용합니다. 액세스 2003을 사용합니다. 몇 가지 쿼리를 시도했지만 하나를 완벽하게 만들 수는 없습니다. 정확한 결과를 얻지 못합니다. 누군가 도와주세요.

감사합니다,

감사합니다,

+0

'AdmitDate'의 데이터 유형은 무엇입니까? –

+0

AdmitDate : dateTime 및 AdmitTime : dateTime too –

+0

그럼 왜 'AdmitTime'도 필요합니까? 왜 두 값을 같은 열에 저장하지 않습니까? –

답변

3

하나 DATETIME 열, 쉬운 것입니다 쿼리의 조건을 구축 할 수 있었다 경우

WHERE AdmitDateTime >= '2012-06-03 07:00' 
    AND AdmitDateTime < '2012-06-05 07:00' 

부터 할 수 있습니다 ' 그리고 Access에는 자체 날짜 및 시간 함수가 있으므로이 함수가 작동한다고 생각합니다.

,210
WHERE DateValue(AdmitDate) + AdmitTime 
     >= DateValue([InputDate]) + TimeValue('07:00') 
    AND DateValue(AdmitDate) + AdmitTime 
     < DateValue([InputDate]) + 2 + TimeValue('07:00') 

DateValue() 호출은 사용자에 의해 또는 AdmitDate 열의 전달 된 값의 임의의 시간 부분이 잘려 있으며 만 '07:00'AdmitTime 사용되었는지가 확인된다.

+0

내가 이것을 시도 : 선택 * 입학 어디에서 (((AdmitDate + AdmitTime)> = # 1/6/2012 10 : 00 #) AND ((AdmitDate + AdmitTime) <= # 3/6/2012 15 : 00 #)) 그러나 이상한 결과를 얻는다. –

+0

작품 매력처럼! 내가 그것을 매개 변수로 수정 ​​Start_Date DateTime, End_Date DateTime; SELECT AdmitDate, Admit_PtLocations FROM AdmitTime WHERE DATEVALUE (AdmitDate) + AdmitTime > = DATEVALUE (시작일) + TIMEVALUE (07 : 00) AND DATEVALUE (AdmitDate) + AdmitTime

+0

예, 이제 의미가 있습니다. 도와 줘서 고마워 !! –

0

모든 사무실 날짜는 숫자, 그래서 당신은 추가 할 수 있습니다

SELECT [admitdate]+[admittime] AS Expr1 
FROM dt 
WHERE ((([admitdate]+[admittime]) 
    Between #6/3/2012 7:0:0# And #6/5/2012 6:59:59#)); 

위의 쿼리 디자인 창에서 작동하지만 다른 곳에서도 같은 VBA대로 로케일 문제로 실행됩니다.

편집 재 코멘트

Result 
03/06/2012 10:00:00 
03/06/2012 19:00:00 
04/06/2012 20:38:00 
+0

임 문제가 있습니다 : 위의 쿼리 작동하지만 5 일에서 7 일까지 결과를 제공 ..... 이상한 !!!!! 왜 그런 생각이 들었습니까? 나는 날짜를 바꿔 치기를 시도했다. 그리고 항상 2 일 앞으로 나아 갔다. ...... –

+0

MS Access는 대부분 미국 날짜를 사용한다. 모호성이 없도록하려면 일반적으로 날짜를 yyyy/mm/dd 형식으로 입력하는 것이 가장 좋습니다. 무엇을 입력 했습니까? – Fionnuala

+0

나는 dd/mm/yy ....에 넣었다. 그러나 나는 yyyy/mm/dd를 시도했다. 그러나 나는 같은 결과 (2 일 앞으로)를 얻는다. –