수고하십니다.
고수님들.
mysql 데이타중에 날짜가 '2001-01-01' 이런 식으로 들어 있어요.
데이타에 석달을 + 해서 새로운 필드를 만들어야 돼는데요.
mysql 에 날짜를 조작하는 함수가 있다는 말을 듣고 여기 저기 찾아봤는데.
통 못찾겠어여. 좀 가를쳐 주세요.
델파이에서 Query 콤포넌트에 CalcFields필드를 만들로 그것을 Filter 를 했는데
CalcFields 필드는 Filter를 할수가 없다는 에러가 뜨거든요. -_-!!!
그래서 쿼리에 계산된 필드를 만들려고 하는겁니다.
꼭 답변 부탁합니다.
흠...MySQL에서 날자를 조작하는 함수가 있긴 한데요...님이 원하시는것은 없는거
같네요!! 그냥 달을 더하거나 뺄려면 함수를 하나 만드는 편이 좋을꺼 같은데....
별로 어려운것도 아니고...
글코 MySQL에서 제공하는것은 데이터 타입이 date 인것을 다룹니다. string는 안
해줄껄여...
일단 MySQL에서 제공하는 날자 관련 함수를 올려드리죠..
DAYOFMONTH(date) : 날짜만 리턴해주는 함수. (1-31) 한달을 단위로.
DAYOFYEAR(date) : 이역시 날짜만 리턴. (1-366) 1년을 단위로.
TO_DAYS(date) : 연도와 달을 모두 날짜화 시켜서 리턴해줍니다.
(1999-01-01 = (1999 * 365) + (01 * 31) + 1)
MONTH(date) : 달을 리턴해주는 함수.
DAYNAME(date) : 요일을 문자로 리턴. (ex :'Thursday')
MONTHNAME(date) : 달을 문자로 리턴. (ex :'February')
WEEK(date) : 해당 연도에 몇번째 주인지를 리턴 (0-52)
YEAR(date) : 연도를 리턴 (1000-9999)
HOUR(time) : 시간 리턴
MINUTE(time) : 분 리턴
SECOND(time) : 초 리턴
DATE_FORMAT(date,format)
`%W' Weekday name (`Sunday'..`Saturday')
`%D' Day of the month with english suffix (`1st', `2nd', `3rd',
etc.)
`%Y' Year, numeric, 4 digits
`%y' Year, numeric, 2 digits
`%a' Abbreviated weekday name (`Sun'..`Sat')
`%d' Day of the month, numeric (`00'..`31')
`%e' Day of the month, numeric (`0'..`31')
`%m' Month, numeric (`01'..`12')
`%c' Month, numeric (`1'..`12')
`%b' Abbreviated month name (`Jan'..`Dec')
`%j' Day of year (`001'..`366')
`%H' Hour (`00'..`23')
`%k' Hour (`0'..`23')
`%h' Hour (`01'..`12')
`%I' Hour (`01'..`12')
`%l' Hour (`1'..`12')
`%i' Minutes, numeric (`00'..`59')
`%r' Time, 12-hour (`hh:mm:ss [AP]M')
`%T' Time, 24-hour (`hh:mm:ss')
`%S' Seconds (`00'..`59')
`%s' Seconds (`00'..`59')
`%p' `AM' or `PM'
`%w' Day of the week (`0'=Sunday..`6'=Saturday)
`%U' Week (`0'..`52'), Sunday is the first day of the week.
`%u' Week (`0'..`52'), Monday is the first day of the week.
`%%' Single `%' characters are ignored. Use `%%' to produce a
literal `%' (for future extensions).
이상입니다. 몇가지 더 있긴 한데..매널 찾아보시면 될꼽니다. :)
글쿠 Zeos라는 라이브러리에서 MySQL용 으로 제공되는 UDF에도 날짜관련 함수가
몇가지 있습니다.
http://www.zeos.dn.ua 또는 http://www.zeoslib.org 에서 class lib를 함 보십시요
그럼...휘리릭~~
bLue bLood.
쭈꾸미 wrote:
> 수고하십니다.
> 고수님들.
> mysql 데이타중에 날짜가 '2001-01-01' 이런 식으로 들어 있어요.
> 데이타에 석달을 + 해서 새로운 필드를 만들어야 돼는데요.
> mysql 에 날짜를 조작하는 함수가 있다는 말을 듣고 여기 저기 찾아봤는데.
> 통 못찾겠어여. 좀 가를쳐 주세요.
>
> 델파이에서 Query 콤포넌트에 CalcFields필드를 만들로 그것을 Filter 를 했는데
> CalcFields 필드는 Filter를 할수가 없다는 에러가 뜨거든요. -_-!!!
> 그래서 쿼리에 계산된 필드를 만들려고 하는겁니다.
>
> 꼭 답변 부탁합니다.