资源描述
1.Cdate(日期表达式)
将日期表达式转换成日期类型的数据。
日期表达式是任何可以解释成日期的表达式,包含日期文字,可以看作日期的字符串以及从函数返回的日期。
比如:myDate = CDate("99-5-20") ,这样的日期表达式必须加双引号,否则结果不可预料。
CDate 依据系统上的区域设置来决定日期的格式。如果提供的格式为不可识别的日期设置,则不能正确判断年、月、日的顺序。
2.Now()
返回当前计算机系统设置的日期和时间。
3.Year(日期表达式)
返回表示年份的整数。
比如:Year("00-6-15") = 2000
4.Month(日期表达式)
返回 1 到 12 之间的整数,表示一年中的某月。
比如:Month("00-6-15") = 6
5.DateAdd(interval, number, date)
DateAdd 函数语法中有下列命名参数:
部分 描述
interval 必要。字符串表达式,是所要加上去的时间间隔。
number 必要。数值表达式,是要加上的时间间隔的数目。其数值可以为正数(得到未来的日期),也可以为负数(得到过去的日期)。
date 必要。Variant (Date) 或表示日期的文字,这一日期还加上了时间间隔。
设置 interval 参数具有以下设定值:
设置 描述
yyyy 年
q 季
m 月
y 一年的日数
d 日
w 一周的日数
ww 周
h 时
n 分钟
s 秒
说明
可以使用 DateAdd 函数对日期加上或减去指定的时间间隔。
例如,可以用 DateAdd 来计算距今天为三十天的日期;或者计算距现在为 45 分钟的时间。
为了对 date 加上“日”,可以使用“一年的日数” (“y”),“日” (”d”) 或“一周的日数” (”w”)。
DateAdd 函数将不返回有效日期。在以下实例中将 1 月31 日加上一个月:
DateAdd(m, 1, 31-Jan-95)
上例中,DateAdd 返回 1995 年 2 月 28 日,而不是 1995 年 2 月 31 日。
如果 date 是 1996 年 1 月 31 日,则由于 1996 年是闰年,返回值是 1996 年 2 月 29 日。
如果计算的日期超前 100 年(减去的年度超过 date 中的年份),就会导致错误发生。
如果 number 不是一个 Long 值,则在计算时取最接近的整数值来计算。
注意 DateAdd 返回值的格式由 Control Panel设置决定,而不是由传递到date 参数的格式决定。
事例:
DateAdd("d",10,"2000-6-18")
结果是: 2000-06-28
DateAdd("m",-1,"2000-6-18")
结果是: 2000-05-18
6、DateDiff 函数
返回 Variant (Long) 的值,表示两个指定日期间的时间间隔数目。
语法 DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]])
DateDiff 函数语法中有下列命名参数:
部分 描述
interval 必要。字符串表达式,表示用来计算date1 和 date2 的时间差的时间间隔
Date1□date2 必要;Variant (Date)。计算中要用到的两个日期。
Firstdayofweek 可选。指定一个星期的第一天的常数。如果未予指定,则以星期日为第一天。
firstweekofyear 可选。指定一年的第一周的常数。如果未予指定,则以包含 1 月 1 日的星期为第一周。
interval 参数的设定值同DateAdd函数,请参考上面的例子。
例:DateDiff("d",#2004-01-06#,#2004-01-07#) 1
7、DatePart 函数
返回一个包含已知日期的指定时间部分的 Variant (Integer)。
语法 DatePart(interval, date[,firstdayofweek[, firstweekofyear]])
DatePart 函数语法中有下列命名参数:
部分 描述
interval 必要。字符串表达式,是要返回的时间间隔。
date 必要。要计算的 Variant (Date) 值。
Firstdayofweek 可选。指定一个星期的第一天的常数。如果未予指定,则以星期日为第一天。
firstweekofyear 可选。指定一年第一周的常数。如果未予指定,则以包含 1 月 1 日的星期为第一周。
设置
interval 参数的设定值同DateAdd()
DatePart 函数示例本示例先取得一个日期,然后使用 DatePart 函数显示该日期是发生在该年的哪一季。
Dim TheDate As Date ' 声明变量。
Dim Msg
T
12、Time 函数
返回一个指明当前系统时间的 Variant (Date)。
语法
Time
示例
使用 Time 函数返回系统当前的时间。
Dim MyTimeMyTime = Time ' 返回系统当前的时间
说明
为了设置系统时间,请使用 Time 语句。
设置系统时间。
语法
Time = time
必要的 time 参数,可以是任何能够表示时刻的数值表达式、字符串表达式或它们的组合。
说明
如果 time 是一字符串,则 Time 会试着根据系统指定的时间,利用时间分隔符将其转换成一个时间。如果无法转换成一个有效的时间,则会导致错误发生。
13、FormatDateTime函数
描述
返回一个日期或时间格式的表达式。
语法
FormatDateTime(Date[,NamedFormat])
FormatDateTime函数语法有如下几部分:
部分 描述
Date 必需的。要被格式化的日期表达式
NamedFormat可选的。数字值,表示日期/时间所使用的格式。如果忽略该值,则使用vbGeneralDate。
设置值
NamedFormat参数的设置值如下:
常数 值 描述
vbGeneralDate 0 显示日期和/或时间。如果有日期部分,则用短日期格式显示。如果有时间部分,则用长时间格式显示。如果都有,两部分都显示。
VbLongDate 1 用计算机区域设置值中指定的长日期格式显示日期。
VbShortDate 2 用计算机区域设置值中指定的短日期格式显示日期。
18、用户自定义日期/时间格式 (Format 函数)
下面标识一些可用来创建用户自定义日期/时间格式的字符:
字符 说明
(:) 时间分隔符。在一些区域,可能用其他符号来当时间分隔符。格式化时间值时,时间分隔符可以分隔时、分、秒。时间分隔符的真正字符在格式输出时取决于系统的设置。
(/) 日期分隔符。在一些区域,可能用其他符号来当日期分隔符。格式化日期数值时,日期分隔符可以分隔年、月、日。日期分隔符的真正字符在格式输出时取决于系统设置。
c 以 ddddd 来显示日期并且以 ttttt 来显示时间。如果想显示的数值无小数部分,则只显示日期部分,如果想显示的数值无整数部分,则只显示时间部分。
d 以没有前导零的数字来显示日 (1–31)。
dd 以有前导零的数字来显示日 (01–31)。
ddd 以简写来表示日 (Sun–Sat)
dddd 以全称来表示日 (Sunday–Saturday)
ddddd 以完整日期表示法显示(包括年、月、日),日期的显示要依系统的短日期格式设置而定。
dddddd 以完整日期表示法显示日期系列数(包括年、月、日),日期的显示要依系统识别的长日期格式而定。缺省的长日期格式为 mmmm
dd, yyyy。
aaaa 与dddd 一样,它只是该字符串的本地化版本。
w 将一周中的日期以数值表示(1 表星期日~ 7表星期六)。
ww 将一年中的星期以数值表示 (1–54)。
m 以没有前导零的数字来显示月 (1–12)。如果 m 是直接跟在 h 或 hh 之后,那么显示的将是分而不是月。
mm 以有前导零的数字来显示月 (01 – 12)。如果m是直接跟在h或hh之后,那么显示的将是分而不是月。
mmm 以简写来表示月 (Jan–Dec)。
mmmm 以全称来表示月 (January–December)。
oooo 与mmmm一样,它只是该字符串的本地化版本。
q 将一年
如何将文本型:2003.08.04 转换为日期型:2003-08-04
cdate(replace("2003.08.04",".","-"))
显示当前日期在该年中所处的星期号
=Format(Now(), "ww")
ww 为 1 到 53。
显示日期字段值的四位年份值。
=DatePart("yyyy", [订购日期])
显示日期字段值前 10 天的日期值。
=DateAdd("y", -10, [应付日期])
显示日期字段值前一个月的日期值。
=DateAdd("m",-1,Date())
显示日期1和日期2之间相差的天数。
=DateDiff("d", [订购日期], [发货日期])
从今天算起到三个月后的日期之间的记录。
Betweeb date() and adddate(3,date())
根据出生日期计算年龄(周岁)
=IIf(Month(Date())-Month([出生年月日])>-1,Year(Date())-Year([出生年月日]),Year(Date())-Year([出生年月日])-1)
日期函数示例
当天日期:=Date()
当日:=Day(date)
当月:=Month(date())
当年:=Year(date())
当季:=DatePart("q",Date())
算出每个月的天数
一法:
Dim a, b, c
a = Year(Now())
b = Month(Now())
c = Format((a & "/" & b + 1 & "/1"), "######") - Format((a & "/" & b & "/1"), "######")
二法:
DateDiff("d", Format(Date, "yyyy-mm-01"), Format(DateAdd("m", -1, Date), "yyyy-mm-01"))
DateDiff可以算出两个日期之间相差几天!
三法:
Day(DateAdd("d", -1, Format(Date, "yyyy-mm-01")))
day函数可以知道某个日期是这个月的第几天,我们把这个月的最后一天拿出来DAY一下!
应该还有更好的方法!
比如说可以定义一个数组,把每个月的日子放进去,或者说写一个函数算每一个月的天数
只要考虑一下闺年的问题就可以了!
如何得到某年每个月的第一天是星期几
Private Sub Command1_Click()
Dim i As Integer, A As Integer, B As Integer, C As String
A = InputBox("请输入年份", "某年每个月的第一天是星期几")
Form1.Cls
For i = 1 To 12
C = A & "-" & i & "-1"
B = Weekday(C)
Select Case B
Case vbSunday
Print A & "年" & i & "月1日是 星期日"
Case vbMonday
Print A & "年" & i & "月1日是 星期一"
Case vbTuesday
Print A & "年" & i & "月1日是 星期二"
Case vbWednesday
Print A &a
-----------
Sql Server中的日期与时间函数 ?蒰(寝 ?
1. 当前系统日期、时间 F桗?赝Q?
select getdate() 鈙H 倂建
鶞Oh牧\"葵
2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值r鯔俏? ?
例如:向日期加上2天 ?5皴? 煃
select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.000Ew郬*矝?
?礛娞>??
3. datediff 返回跨两个指定日期的日期和时间边界数。jo u 秙 溽
select datediff(day,'2004-09-01','2004-09-18') --返回:17?鼄G驂W
毰筒???
4. datepart 返回代表指定日期的指定日期部分的整数。劸赔D\//穙
SELECT DATEPART(month, '2004-10-15') --返回 10Rk銍倝K$7$
欤晛u!: ?
5. datename 返回代表指定日期的指定日期部分的字符串堼梶 U咙
SELECT datename(weekday, '2004-10-15') --返回:星期五S 吜瞎d湺
' 茜?鈠6
6. day(), month(),year() --可以与datepart对照一下V?u罞戀/m
? HZ?S
select 当前日期=convert(varchar(10),getdate(),120) s1 喨??
,当前时间=convert(varchar(8),getdate(),114) 即N 屾蛶4
抗栳B銫K'/
select datename(dw,'2004-10-15') ?3慯萳籋?
b?|
select 本年第多少周=datename(week,'2004-10-15')宎梯d <短?
,今天是周几=datename(weekday,'2004-10-15')牶 ?1嶙挈
鱒聈 W]?n
奄<8姓婨?
函数 参数/功能 y? 蓦??
GetDate( ) 返回系统目前的日期与时间 '瞫濾#縶?
DateDiff (interval,date1,date2) 以interval 指定的方式,返回date2 与date1两个日期之间的差值 date2-date1 鸊脺 儔砍?
DateAdd (interval,number,date) 以interval指定的方式,加上number之后的日期 " 鐺e蠅5流
DatePart (interval,date) 返回日期date中,interval指定部分所对应的整数值 鑒/蟉错渥
DateName (interval,date) 返回日期date中,interval指定部分所对应的字符串名称 杶逯 夤脅c
呓h :l =?
参数 interval的设定值如下:掅 YW @鲫=
8?濠 ?
值 缩 写(Sql Server) (Access 和 ASP) 说明 蔟 T)軤
Year Yy yyyy 年 1753 ~ 9999 A玍癣0qg
Quarter Qq q 季 1 ~ 4 駨#伥沠?F;
Month Mm m 月1 ~ 12 O?c(a耀蒪
Day of year Dy y 一年的日数,一年中的第几日 1-366 Y 觲挰 褽
Day Dd d 日,1-31 粤茎綪嶴诳
Weekday Dw w 一周的日数,一周中的第几日 1-7 襪齀 & ?
Week Wk ww 周,一年中的第几周 0 ~ 51 ?X葤7 膧
Hour Hh h 时0 ~ 23 F?F啇U暜?
Minute Mi n 分钟0 ~ 59 貞』~r笍o
Second Ss s 秒 0 ~ 59 ?6Y?";d
Millisecond Ms - 毫秒 0 ~ 999 AQ彩堐?E8
?闪潽麘缂
Ъ@p彰t3
access 和 asp 中用date()和now()取得系统日期时间;其中DateDiff,DateAdd,DatePart也同是能用于Access和asp中,这些函数的用法也类似畵?b'?
HLu 阏p缤
举例:/0R符?氦?
1.GetDate() 用于sql server :select GetDate()邊象4 面?
X"g# $逹
2.DateDiff('s','2005-07-20','2005-7-25 22:56:32')返回值为 514592 秒O 侠 札⒚
DateDiff('d','2005-07-20','2005-7-25 22:56:32')返回值为 5 天倮KiC伅嬟
v 嶇嶽?觬
3.DatePart('w','2005-7-25 22:56:32')返回值为 2 即星期一(周日为1,周六为7)?聕qV0?
DatePart('d','2005-7-25 22:56:32')返回值为 25即25号y萱1雍破?
DatePart('y','2005-7-25 22:56:32')返回值为 206即这一年中第206天髄? 驐?
DatePart('yyyy','2005-7-25 22:56:32')返回值为 2005即2005年
========
MSSQL汉字转拼音函数实现语句
2009-11-10 16:37
/* -------------------------------------------------------------
函数: fn_GetPinyin
描述: 汉字转拼音(无数据表版)
使用: dbo.fn_GetPinyin('中华人民共和国') = zhonghuarenmingongheguo
作者: 流香羽 (改编:Tony)
------------------------------------------------------------- */
IF OBJECT_ID('[fn_GetPinyin]') IS NOT NULL
DROP FUNCTION [fn_GetPinyin]
GO
create function [dbo].[fn_GetPinyin](@words nvarchar(2000))
returns varchar(8000)
as
begin
declare @word nchar(1)
declare @pinyin varchar(8000)
declare @i int
declare @words_len int
declare @unicode int
set @i = 1
set @words = ltrim(rtrim(@words))
set @words_len = len(@words)
while (@i <= @words_len) --循环取字符
begin
set @word = substring(@words, @i, 1)
set @unicode = unicode(@word)
set @pinyin = ISNULL(@pinyin +SPACE(1),'')+
(case when unicode(@word) between 19968 and 19968+20901 then
(select top 1 py from (
select 'a' as py,N'厑' as word
union all select 'ai',N'靉'
union all select 'an',N'黯'
union all select 'ang',N'醠'
union all select 'ao',N'驁'
union all select 'ba',N'欛'
union all select 'bai',N'瓸' --韛兡瓸
union all select 'ban',N'瓣'
union all select 'bang',N'鎊'
union all select 'bao',N'鑤'
union all select 'bei',N'鐾'
union all select 'ben',N'輽'
union all select 'beng',N'鏰'
union all select 'bi',N'鼊'
union all select 'bian',N'變'
union all select 'biao',N'鰾'
union all select 'bie',N'彆'
union all select 'bin',N'鬢'
union all select 'bing',N'靐'
union all select 'bo',N'蔔'
union all select 'bu',N'簿'
union all select 'ca',N'囃'
union all select 'cai',N'乲' --縩乲
union all select 'can',N'爘'
union all select 'cang',N'賶'
union all select 'cao',N'鼜'
union all select 'ce',N'簎'
union all select 'cen',N'笒'
union all select 'ceng',N'乽' --硛硳岾猠乽
union all select 'cha',N'詫'
union all select 'chai',N'囆'
union all select 'chan',N'顫'
union all select 'chang',N'韔'
union all select 'chao',N'觘'
union all select 'che',N'爡'
union all select 'chen',N'讖'
union all select 'cheng',N'秤'
union all select 'chi',N'鷘'
union all select 'chong',N'銃'
union all select 'chou',N'殠'
union all select 'chu',N'矗'
union all select 'chuai',N'踹'
union all select 'chuan',N'鶨'
union all select 'chuang',N'愴'
union all select 'chui',N'顀'
union all select 'chun',N'蠢'
union all select 'chuo',N'縒'
union all select 'ci',N'嗭' --賜嗭
union all select 'cong',N'謥'
union all select 'cou',N'輳'
union all select 'cu',N'顣'
union all select 'cuan',N'爨'
union all select 'cui',N'臎'
union all select 'cun',N'籿'
union all select 'cuo',N'錯'
union all select 'da',N'橽'
union all select 'dai',N'靆'
union all select 'dan',N'饏'
union all select 'dang',N'闣'
union all select 'dao',N'纛'
union all select 'de',N'的'
union all select 'den',N'扽'
union all select 'deng',N'鐙'
union all select 'di',N'螮'
union all select 'dia',N'嗲'
union all select 'dian',N'驔'
union all select 'diao',N'鑃'
union all select 'die',N'嚸' --眰嚸
union all select 'ding',N'顁'
union all select 'diu',N'銩'
union all select 'dong',N'霘'
union all select 'dou',N'鬭'
union all select 'du',N'蠹'
union all select 'duan',N'叾' --籪叾
union all select 'dui',N'譵'
union all select 'dun',N'踲'
union all select 'duo',N'鵽'
union all select 'e',N'鱷'
union all select 'en',N'摁'
union all select 'eng',N'鞥'
union all select 'er',N'樲'
union all select 'fa',N'髮'
union all select 'fan',N'瀪'
union all select 'fang',N'放'
union all select 'fei',N'靅'
union all select 'fen',N'鱝'
union all select 'feng',N'覅'
union all select 'fo',N'梻'
union all select 'fou',N'鴀'
union all select 'fu',N'猤' --鰒猤
union all select 'ga',N'魀'
union all select 'gai',N'瓂'
union all select 'gan',N'灨'
union all select 'gang',N'戇'
union all select 'gao',N'鋯'
union all select 'ge',N'獦'
union all select 'gei',N'給'
union all select 'gen',N'搄'
union all select 'geng',N'堩' --亙堩啹喼嗰
union all select 'gong',N'兣' --熕贑兝兣
union all select 'gou',N'購'
union all select 'gu',N'顧'
union all select 'gua',N'詿'
union all select 'guai',N'恠'
union all select 'guan',N'鱹'
union all select 'guang',N'撗'
union all select 'gui',N'鱥'
union all select 'gun',N'謴'
union all select 'guo',N'腂'
union all select 'ha',N'哈'
union all select 'hai',N'饚'
union all select 'han',N'鶾'
union all select 'hang',N'沆'
union all select 'hao',N'兞'
union all select 'he',N'靏'
union all select 'hei',N'嬒'
union all select 'hen',N'恨'
union all select 'heng',N'堼' --堼囍
union all select 'hong',N'鬨'
union all select 'hou',N'鱟'
union all select 'hu',N'鸌'
union all select 'hua',N'蘳'
union all select 'huai',N'蘾'
union all select 'huan',N'鰀'
union all select 'huang',N'鎤'
union all select 'hui',N'顪'
union all select 'hun',N'諢'
union all select 'huo',N'夻'
union all select 'ji',N'驥'
union all select 'jia',N'嗧'
union all select 'jian',N'鑳'
union all select 'jiang',N'謽'
union all select 'jiao',N'釂'
union all select 'jie',N'繲'
union all select 'jin',N'齽'
union all select 'jing',N'竸'
union all select 'jiong',N'蘔'
union all select 'jiu',N'欍'
union all select 'ju',N'爠'
union all select 'juan',N'羂'
union all select 'jue',N'钁'
union all select 'jun',N'攈'
union all select 'ka',N'鉲'
union all select 'kai',N'乫' --鎎乫
union all select 'kan',N'矙'
union all select 'kang',N'閌'
union all select 'kao',N'鯌'
union all select 'ke',N'騍'
union all select 'ken',N'褃'
union all select 'keng',N'鏗' --巪乬唟厼怾
union all select 'kong',N'廤'
union all select 'kou',N'鷇'
union all select 'ku',N'嚳'
union all select 'kua',N'骻'
union all select 'kuai',N'鱠'
union all select 'kuan',N'窾'
union all select 'kuang',N'鑛'
union all select 'kui',N'鑎'
union all select 'kun',N'睏'
union all select 'kuo',N'穒'
union all select 'la',N'鞡'
union all select 'lai',N'籟'
union all select 'lan',N'糷'
union all select 'lang',N'唥'
union all select 'lao',N'軂'
union all select 'le',N'餎'
union all select 'lei',N'脷' --嘞脷
union all select 'leng',N'睖'
union all select 'li',N'瓈'
union all select 'lia',N'倆'
union all select 'lian',N'纞'
union all select 'liang',N'鍄'
union all select 'liao',N'瞭'
union all select 'lie',N'鱲'
union all select 'lin',N'轥' --轥拎
union all select 'ling',N'炩'
union all select 'liu',N'咯' --瓼甅囖咯
union all select 'long',N'贚'
union all select 'lou',N'鏤'
union all select 'lu',N'氇'
union all select 'lv',N'鑢'
union all select 'luan',N'亂'
union all select 'lue',N'擽'
union all select 'lun',N'論'
union all select 'luo',N'鱳'
union all select 'ma',N'嘛'
union all select 'mai',N'霢'
union all select 'man',N'蘰'
union all select 'mang',N'蠎'
union all select 'mao',N'唜'
union all select 'me',N'癦' --癦呅
union all select 'mei',N'嚜'
union all select 'men',N'們'
union all select 'meng',N'霥' --霿踎
union all select 'mi',N'羃'
union all select 'mian',N'麵'
union all select 'miao',N'廟'
union all select 'mie',N'鱴' --鱴瓱
union all select 'min',N'鰵'
union all select 'ming',N'詺'
union all select 'miu',N'謬'
union all select 'mo',N'耱' --耱乮
union all select 'mou',N'麰' --麰蟱
union all select 'mu',N'旀'
union all select 'na',N'魶'
union all select 'nai',N'錼'
union all select 'nan',N'婻'
union all select 'nang',N'齉'
union all select 'nao',N'臑'
union all select 'ne',N'呢'
union all select 'nei',N'焾' --嫩焾
union all select 'nen',N'嫩'
union all select 'neng',N'能' --莻嗯鈪銰啱
union all select 'ni',N'嬺'
union all select 'nian',N'艌'
union all select 'niang',N'釀'
union all select 'niao',N'脲'
union all select 'nie',N'钀'
union all select 'nin',N'拰'
union all select 'ning',N'濘'
union all select 'niu',N'靵'
union all select 'nong',N'齈'
union all select 'nou',N'譳'
union all select 'nu',N'搙'
union all select 'nv',N'衄'
union all select 'nue',N'瘧'
union all select 'nuan',N'燶' --硸黁
展开阅读全文