Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
쿼리중 날짜차이 구하기가 안돼요 도와주세요(급합니다)
파라독스 DB를 사용하고 있습니다.
쿼리를 사용하여 두날짜의 차이를 구하고자 합니다.
CAST를 사용하니 값이 공란으로 넘어 옵니다.
어떻게 하면 될까요? 자문 부탁 드립니다.
예 : 2000-02-28 일보다 10일 이전인 2000-02-18일까지의 날짜만 가져오길 바랍니다.
참고로 TYPE는 문자 타입입니다.
2
COMMENTS
Hoon Reader
•
2000.08.07 09:41
날자가 문자 타입이면 숫자로 Casting하는건 불가능하죠. '-'를 찾아서 없애고 다시 Long으로 캐스팅을 해야합니다. 이 방법은 복잡할뿐만아니라 아주 비효율적이죠.
날자는 Date/Time Type을 사용하는 것이 좋을겁니다.
Date Type이면 >, <, = 등을 사용할 수 있고, 기타 다양한 함수도 제공됩니다.
0
0
삭제
수정
댓글
강호규
•
2000.08.07 04:05
박동원 wrote:
> 파라독스 DB를 사용하고 있습니다.
> 쿼리를 사용하여 두날짜의 차이를 구하고자 합니다.
> CAST를 사용하니 값이 공란으로 넘어 옵니다.
> 어떻게 하면 될까요? 자문 부탁 드립니다.
> 예 : 2000-02-28 일보다 10일 이전인 2000-02-18일까지의 날짜만 가져오길 바랍니다.
> 참고로 TYPE는 문자 타입입니다.
>
cast연산 결과에서 공백으로 나온다는 것은 다음을 뜻합니다.
현재 프로그램에서 설정한(또는 시스템에서 설정한) 일자 포맷과
테이블에 저장된 일자(문자)의 포맷이 맞지 않는 다는 것을 뜻합니다.
예를 들면
일자포맷을 "YYYY/MM/DD"로 설정되어 있는데
테이블에는 "YYYY-MM-DD"로 설정되어 있다면
cast 연산을 하다가 일자변환에 실패하기 때문에
공백으로(정확히는 널)로 리턴하겠죠!
이경우 해결방법은 테이블에 날짜를 표현하는 문자열의 포맷으로
일자포맷을 어플리케이션 시작시에 한번 설정하면 됩니다.
ShortDateFormat := 'yyyy-mm-dd';
DateSeparator := '-';
그리고
쿼리 사용시에 되도록이면 함수를 쓰지 않는 것이 기본 튜닝의
방법이므로 cast연산자를 쓰지 않는 것이 DB면에서
효율적으로 사용하는 겁니다.
즉, 2000-02-28 일보다 10일 이전인 2000-02-18일까지의 날짜만 가져오길 바란다면
쿼리 실행이전에
미리 10일 이전값을 테이블에 맞는 문자열 값인 "2000-02-18"를 먼저구하고
실제 쿼리시에는 단순한 쿼리문장으로 조회한다면
훨씬 빠른 결과를 얻을 수 있습니다
select * from .. where 대상필드="2000-02-18"
이문제는 DB 튜닝면에서는 아주 중요한 문제 거든요!
-- end of 답변 --
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
박동원
•
2000.08.07 02:52
2
COMMENTS
/
0
LIKES
쿼리중 날짜차이 구하기가 안돼요 도와주세요(급합니다)
파라독스 DB를 사용하고 있습니다. 쿼리를 사용하여 두날짜의 차이를 구하고자 합니다. CAST를 사용하니 값이 공란으로 넘어 옵니다. 어떻게 하면 될까요? 자문 부탁 드립니다. 예 : 2000-02-28 일보다 10일 이전인 2000-02-18일까지의 날...
Hoon Reader
•
2000.08.07 09:41
날자가 문자 타입이면 숫자로 Casting하는건 불가능하죠. '-'를 찾아서 없애고 다시 Long으로 캐스팅을 ...
강호규
•
2000.08.07 04:05
박동원 wrote: > 파라독스 DB를 사용하고 있습니다. > 쿼리를 사용하여 두날짜의 차이를 구하고자 합니다...
빈거울
•
2000.08.07 00:56
3
COMMENTS
/
0
LIKES
다른 프로그램 죽이기...
모승열
•
2000.08.08 20:46
빈거울 wrote: > 안녕하세요. > WM_COPYDATA 를 사용해서 데이타를 주고 받을 때. > 데이타를 던진 쪽을...
Hoon Reader
•
2000.08.07 09:56
일단 Data는 제대로 받는지 궁금합니다. CopyMemory(@data, Message.CopyDataStruct^.lpData, SizeOf(T...
빈거울
•
2000.08.07 18:25
FindWindow에서 잘 찾습니다. 그리고 데이타도 잘 넘어 오고요. 그리고. 받는 부분을 메인에 놓은 것이 ...
한비광
•
2000.08.07 00:18
3
COMMENTS
/
0
LIKES
델파이 문법중 ord 가 뭐죠?
Hoon Reader
•
2000.08.07 10:16
ord는 byte 크기 밖에 지원안합니다. 즉, 256이 최고수라는 거죠. byte 크기는 Byte, Char 그리고 순...
4master
•
2000.08.07 03:41
한비광 wrote: > 안녕하세요 > > 델파이 시작 한지 하루 된 왕초보 델피언 입니다 > > 자꾸 기본 ...
모승열
•
2000.08.07 03:22
한비광 wrote: > 안녕하세요 > > 델파이 시작 한지 하루 된 왕초보 델피언 입니다 > > 자꾸 기본 ...
이병돈
•
2000.08.06 22:18
2
COMMENTS
/
0
LIKES
dbcombobox 사용시 data가 안나와요... help!!!
Hoon Reader
•
2000.08.07 10:44
델파이 4.0 버젼에서는 Table에 DBComboBox와 연결이 잘 안되었음. 엄청나게 테스트 해보았는데도 잘 안되...
4master
•
2000.08.06 22:37
이병돈 wrote: > dbcombobox를 사용해서 table의 특정 field 값을 선택할수 있도록 할려고 하는데.. > co...
대희
2000.08.06 21:22
0
COMMENTS
/
0
LIKES
GDI 나누기오류-어떻게 해야하나요
한비광
•
2000.08.06 20:26
2
COMMENTS
/
0
LIKES
변수에 설정 되는 12262020 값이 무엇인가요?
Hoon Reader
•
2000.08.07 10:38
garbage value (쓰레기값) 이라 부릅니다. 즉 초기화를 안하면 이전의 어떤 프로그램이 사용하던 그 값이 ...
4master
•
2000.08.06 22:32
한비광 wrote: > 질문이 하나 더 있는데요 > > count := 0; > > 이런 식으로 초기화를 않해 주면 ...
한비광
•
2000.08.06 20:00
2
COMMENTS
/
0
LIKES
begin 은 어디에 사용해야 되는 건가요?
노을
•
2000.08.06 23:21
안녕하세요 노 을 입니다. 아래 답변을 보니 Block 을 나타낸다고 했죠? ^^.. 저는 추가적으로 좀더 ...
4master
•
2000.08.06 22:22
한비광 wrote: > 중첩 for 문에서 보면 > 첫번째 for 에서는 begin 을 쓰는데 두번째 for 에서는 begin ...
parkisu
2000.08.06 08:56
0
COMMENTS
/
0
LIKES
윈도우버전을 정확하게 구하는 법
brucehan
•
2000.08.06 06:52
5
COMMENTS
/
0
LIKES
함수를 만들려고 합니다. 방법 좀 갈켜주세요.
어린왕자
•
2000.08.08 03:43
안녕하세요.. 님의 말씀은 이런거죠... 어떤식이 있는데.. 상황에 따라서 그식이 변한다는거죠.. 예...
Hoon Reader
•
2000.08.07 10:34
하고자 하는 바를 충분히 이해합니다. 님이 이해하기 어렵게 좀 어렵게 설명하겠습니다. 그런 것이 ...
강인규
•
2000.08.07 00:54
뭘만드시려는지는 잘 모르겠지만 함 적어봅니다. > AVERAGE(A,5)라는 주식분석용 이동평균함수를 만...
노을
•
2000.08.06 23:39
안녕하세요 노 을 입니다. 음 식의 복사?.. 라는 의미를 모르겠내요... 일단 Average(A,5); ...
타락천사
•
2000.08.06 23:24
안녕하세여. 타락임다...^^ 질문만 가지곤 어떻게 구현해야 할지 모르겠지만... 델파이에서 안된다구...
김미좌
•
2000.08.06 06:25
2
COMMENTS
/
0
LIKES
메모에 대해서.....
4master
•
2000.08.06 07:20
김미좌 wrote: > query를사용하여 선택된 값을 메모에 입력시키는데... > > query1.open > 1) > memo...
김미좌
•
2000.08.06 07:41
4master wrote: > 김미좌 wrote: > > query를사용하여 선택된 값을 메모에 입력시키는데... > > > > q...
지친초보
•
2000.08.06 01:13
1
COMMENTS
/
0
LIKES
db컨버젼... 답답해서 미치겠어요.....
4master
•
2000.08.06 07:24
지친초보 wrote: > 파라독스7.0 델파이4.0 win98 > > 단순하게 전에 있던 데이터베이스의 필드를 다른 ...
김명성
2000.08.06 00:54
0
COMMENTS
/
0
LIKES
[재질문 답변이 없어서] SetWindowPos 함수는 mdi에서 사용가능한가요??????
왕초보
•
2000.08.06 00:32
2
COMMENTS
/
0
LIKES
table에 insert할때 Key Violation Error -source봐주세
4master
•
2000.08.06 07:35
왕초보 wrote: > Key 값이 중복되지도 않구요. Key Violation Error 가 난 후에 다시 들어가보면 > 데이...
강호규
•
2000.08.06 00:57
이럴 수도 있습니다. Key Violation Error 가 났다는 것은 대상 테이블에 중복된 값을 입력하려 할 때 발...
이명근
•
2000.08.06 00:29
1
COMMENTS
/
0
LIKES
Blob field의 image 저장에 대하여..(왕초보)
강호규
•
2000.08.06 00:52
저도 이곳에서 자료를 찾아 어제 완성한 부분인데요.. 시간이 없어 코드를 그냥 올립니다. 양해바랍니다. ...
강호규
•
2000.08.06 00:23
3
COMMENTS
/
0
LIKES
오라클 쿼리시 커서가 변경않되게 할려면?
소금이
•
2000.08.07 19:04
강호규 wrote: > [질문] > 일반적으로 오라클DB에 접속하여 쿼리를 하게 되면 > 커서가 "모래시계+SQL"...
강호규
•
2000.08.09 05:24
소금이 wrote: > 강호규 wrote: > > [질문] > > 일반적으로 오라클DB에 접속하여 쿼리를 하게 되면 > >...
김일영
•
2000.08.09 12:04
상당히 어렵지 않나 싶네요. 제가 예전에 찾아본 기억으론 커서 바꾸는 부분이 TQuery의 멤버 함수 내에 ...
권오정
•
2000.08.05 23:17
1
COMMENTS
/
0
LIKES
summary를 출력하는데....
황선희
•
2000.08.06 00:27
권오정 wrote: > data가 > aaa a 100 > bbb a 100 > ccc b 200 > ddd c 100 > 이 ...
호야
•
2000.08.05 21:08
4
COMMENTS
/
0
LIKES
여러행을 복사해서 붙이기
타락천사
•
2000.08.05 21:23
호야 wrote: > 스트링그리드에서 여러행을 선택해서 > 붙여넣기를 할려고 합니다. > 이사이트를 밤세서 ...
호야
•
2000.08.08 01:28
타락천사 wrote: > 호야 wrote: > > 스트링그리드에서 여러행을 선택해서 > > 붙여넣기를 할려고 합니다...
타락천사
•
2000.08.09 08:54
즐거운 하루 되세여.. 지가 넘 바뻐서뤼...^^ 타락천사......
호야
•
2000.08.07 03:25
뻥이 아닙니다. 제목이 뭐죠? 한라인을 추가/삭제하는걸 말하는 겁니까? 타락천사 wrote: > 호야 wro...
김만성
•
2000.08.05 21:01
3
COMMENTS
/
0
LIKES
디비그리드값 수정방법....
parkisu
•
2000.08.06 07:40
김만성 wrote: > > 안녕하세요...~ 델피 가족 여러분.. > 오늘 또 질문 하나 올립니다.. > 이런건...
타락천사
•
2000.08.05 21:25
김만성 wrote: > > 안녕하세요...~ 델피 가족 여러분.. > 오늘 또 질문 하나 올립니다.. > 이런건...
김만성
•
2000.08.06 04:24
좀더 자세히 설명을 해주시겠어요.. " 쿼리를 하나 더 만드세요.. " 이 한마디만으로는 감이 오질...
윤미영
2000.08.05 20:57
0
COMMENTS
/
0
LIKES
ocx를 로드 할수 없다는 에러메세지는 무엇을 뜻합니까?
azure
•
2000.08.05 20:50
1
COMMENTS
/
0
LIKES
쿼리한 내용을 excel로 불러오는데..
타락천사
•
2000.08.05 21:27
안녕하세여.. 타락임다...^^ ADO를 쓰셨나여? 직접 Excel로 보는것 보단, ODBC가 빠르고, 그거보단 ...
박동원
2000/08/07 02:52
Views
193
Likes
0
Comments
2
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
날자가 문자 타입이면 숫자로 Casting하는건 불가능하죠. '-'를 찾아서 없애고 다시 Long으로 캐스팅을 해야합니다. 이 방법은 복잡할뿐만아니라 아주 비효율적이죠.
날자는 Date/Time Type을 사용하는 것이 좋을겁니다.
Date Type이면 >, <, = 등을 사용할 수 있고, 기타 다양한 함수도 제공됩니다.