sql计算日期怎么搞

sql计算日期怎么搞,第1张

数字型

在表中新加一个还书日期字段,在触发器中加入例如下面这个语句:

update 表 set 还书日期 = 'select 借书日期+5 from 表 where 借书证号=''';

然后在程序中判断还书日期与当前日期就行了。

或者新建一个触发器,进行判断。

SELECT DATE(LEFT('201202', 4) || '-'||RIGHT('201202', 2)||'-1') - 1 MONTH,

DATE(LEFT('201202', 4) || '-'||RIGHT('201202', 2)||'-1') + 1 MONTH

from sysibm/sysdummy1

DATE(LEFT('201202', 4) || '-'||RIGHT('201202', 2)||'-1') - 1 MONTH这样拿到的是日期类型,需要cast as char,然后截取就可以了

db2处理日期很垃圾的

declare@t1datetime;declare@t2datetime;declare@nint;declare@yint;DECLARECur_Acccursorlocalforselect工作止日,工作起日from基本情况表OPENCur_AccWHILE(1=1)BEGINFETCHNEXTFROMCur_AccINTO@t2,@t1if@@fetch_status!=0break;select@n=datediff(year,@t1,@t2),@y=datediff(month,@t1,@t2)update基本情况表set合同年限=FLOOR(@y/12)+年+@y-FLOOR(@y/12)12+月endCLOSECur_AccDEALLOCATECur_Acc

查看原帖>>

sql语句中计算两个日期的差值用datediff函数。

工具:sqlserver 2008 R2

步骤:

1、计算2009-06-23与2009-06-17之间的天数。语句如下:

select datediff(d,'2009-06-17','2009-06-23')

2、查询结果:

datediff函数:

语法:DATEDIFF(datepart,startdate,enddate)

startdate 和 enddate 参数是合法的日期表达式。

datepart 参数可以是下列的值:

结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;

sql 语句就是对数据库进行 *** 作的一种语言。

折叠sql语句

更新:update table1 set field1=value1 where 范围

查找:select from table1 where field1 like '%value1%' (所有包含'value1'这个模式的字符串)

排序:select from table1 order by field1,field2 [desc]

求和:select sum(field1) as sumvalue from table1

平均:select avg(field1) as avgvalue from table1

最大:select max(field1) as maxvalue from table1

最小:select min(field1) as minvalue from table1[separator]

<php echo $showtime=date("Y-m-d H:i:s");>

显示的格式: 年-月-日 小时:分钟:秒

相关时间参数:

a - "am" 或是 "pm"

A - "AM" 或是 "PM"

d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31"

D - 星期几,三个英文字母; 如: "Fri"

F - 月份,英文全名; 如: "January"

h - 12 小时制的小时; 如: "01" 至 "12"

H - 24 小时制的小时; 如: "00" 至 "23"

g - 12 小时制的小时,不足二位不补零; 如: "1" 至 12"

G - 24 小时制的小时,不足二位不补零; 如: "0" 至 "23"

i - 分钟; 如: "00" 至 "59"

j - 几日,二位数字,若不足二位不补零; 如: "1" 至 "31"

l - 星期几,英文全名; 如: "Friday"

m - 月份,二位数字,若不足二位则在前面补零; 如: "01" 至 "12"

n - 月份,二位数字,若不足二位则不补零; 如: "1" 至 "12"

M - 月份,三个英文字母; 如: "Jan"

s - 秒; 如: "00" 至 "59"

S - 字尾加英文序数,二个英文字母; 如: "th","nd"

t - 指定月份的天数; 如: "28" 至 "31"

U - 总秒数

w - 数字型的星期几,如: "0" (星期日) 至 "6" (星期六)

Y - 年,四位数字; 如: "1999"

y - 年,二位数字; 如: "99"

z - 一年中的第几天; 如: "0" 至 "365"

可以自由设定显示的内容,连接符号或是显示位置,例如 date("m-d H") 或者date("dmY");>等

php中的日期处理

加入时间:2004-12-18 17:35:22 大小:12 KB 阅读次数:1405

PHP中的日期处理

转贴:xiaxia 日期:2004-05-26 人气:9

我正打算用PHP编写一种帮助处理系统。我发现我必须知道处理完最后一位客户的问题后已经过去了多长时间?当我过去用ASP时解决这个问题相当简单,ASP有相应的函数DateDiff可以给出两个日期间间隔多少月、多少天和多少秒。当我搜寻完PHP手册后我发现PHP并没有类似的函数。

本文包含以下内容:

1、 得到目前的日期和时间-我们有多少种方式?

2、 改变日期显示的方式-日期和时间的显示形式

3、 转换现在的日期为Unix的时间戳值

4、 改变日期

a 增加时间

b 减去时间

c 找出两日期之间的间隔

5、 为PHP添加DateAdd函数

6、 为PHP添加DateDiff函数

得到目前的日期和时间

在Unix中,时间的表示方式为计算从1970年1月1日零时起所过去的秒数,这称为UNIX 时间戳(Unix Epoch)。

如果我们有这样一段的代码:

echo time();

将返回值958905820

而此时的时间为2000年5月21日12时43分。

你也许会说这相当不错。当这对我毫无帮助,或者只有一点帮助。在PHP中,对日期处理的函数都必须用到由time()返回的时间戳值。同时,由于PHP在Unix和Windows系统中均使用同样的时间戳值,这就允许你不需要修改代码即可在不同的系统间移植。另外的一个好处是time()函数返回的是一个整数,你可以将其作为整数字段或文本字段存入数据库,而不必使用特别的日期/时间字段。

你已经基本了解了Unix的时间戳值,现在让我们来展示它的实际用途。

改变日期显示的方式-日期和时间的显示形式

PHP提供两个办法来将Unix的时间戳值转换成为有用的数据。第一个是date()函数。这个函数有两个参数-第一个字符串用于设定你所希望返回的格式,第二个为Unix的时间戳值。

格式化字符串通过一些简单的特殊格式化字符来显示你所希望看到的格式的日期和时间。假设你希望日期以这样的格式显示“18h01 Sunday 21 May”。

我们需要对字符串中的每一部分使用一个特殊格式化字符,你可以从PHP手册中日期和时间函数库中找到。这样的特殊格式化字符数量不少,他们所表示的类似于星期几、月的英文名、用2位或4位数表示的年份,是否是上午(AM)或下午(PM)以及其他。对于这个例子我们需要的特殊字符为:

‘H’ -24 小时制的小时

‘i’- 分钟

‘l’- 星期几的英文全名

‘d’- 本月的第几日

‘F’- 月份的英文全名

因此我们的格式化字符串为”Hhi l d F”, PHP代码为:

echo date ("Hhi l d F" ,time());

当我们执行这段代码,我们发现我们所得到的结果为:

180609 Sunday 21 May

这样的结果看起来有些奇怪。让我们再查一下PHP手册,原来’h’所代表的是12 小时制的小时数。这再次证明了一句真理:“计算机只做你所告诉它该做的,而不是你想要它做的”。我们有两个选择。第一个是在h前使用转义字符“”:

echo date ("Hhi l d F", time());

我们得到这样的结果:

18h12 Sunday 21 May

这正是我们所要的。但如果我们在一个十分复杂的句子中需要包含日期和时间,我们是否需要对每个字符使用转义字符?

答案当然是不。我们使用另一个函数strftime()。

strftime()有两个好处。第一个好处我们并不在本文讨论范围内-如果你使用setlocale()函数,你可以通过strftime得到相应语言的月份的名称。另外的一个好处是你可以将特别的日期和时间的格式化字符包含在你的字符串中。这同时也意味着无论你是否要学习date()函数的所有特殊格式化字符,你都必须学习一整套完全不同的格式化字符。

strftime()工作的方式和date()没有什么不同,除了特殊格式化字符的前面必须添加一个百分号%。如果用strftime()函数,前面例子的代码如下:

echo strftime ("%Hh%M %A %d %b" ,time());

结果为:

18h24 Sunday 21 May

这也许看起来将简化繁,但考虑一下如果你所需要的显示的为"Today is Sunday 21 May 2000 The time is somewhere close to 18h24" 我想使用date()函数无疑令人感到厌烦。

在开始的时候,我提及我们有两种方式可以从Unix时间戳值中得到有用的数据。我们刚刚了解了date()和strftime()。另一个getdate()。这个函数只需要Unix 的时间戳值作为参数,而函数的返回值为日期和时间的数组

知道认证,就等你来!

只要你够热情,爱助人,你就能加入我们!专属标志,亿万网友的信赖和关注,无限好礼,通通只为你!

马上加入 新闻 网页 贴吧 知道 MP3 视频 百科 文库 帮助 | 设置

百度知道 > 电脑/网络

有关孔子的歇后语 浏览次数:11836次悬赏分:10 | 解决时间:2011-1-16 16:56 | 提问者:4h4fhvbs2

孔子的歇后语

越多越好!!

最佳答案 1孔夫子背书箱——(里面大有文章 )

2孔夫子打哈欠——(满口书生气)

3孔夫子的嘴巴——(出口成章)

4孔夫子出门——(三思而行)

5孔夫子讲学——(之乎者也)

6孔夫子门前讲论语——(自不量力)

7孔夫子挂腰刀——(不文不武)

8孔夫子念文章——(咬文嚼字 )

9孔夫子教《三字经》——(埋没人材)

10孔夫子游列国---尽是理(礼)

补充

孔夫子卵脬(音抛)——文诌诌。

乡下人不识孔夫子——读书老爷(独输老爷)

孔夫子擐搭裢——两头书(两头输)。

孔夫子肚皮——书橱(舒徐)。

孔夫子唱戏——出口成章。

孔夫子跌到桥底下——(尸)诗书横流。

孔夫子的手巾——包书(输)。

孔夫子喝卤水——明白人办糊涂事。

孔夫子吃粥——心里没数。

孔夫子拿笤帚――斯文扫地。

孔夫子放屁――文气冲天。

孔夫子当教授——古为今用。

孔夫子的背包——准是书(输)。

孔夫子的褡裢——书呆(袋)子。

孔夫子的坟——久慕(墓)。

孔夫子穿西装――不土不洋。

孔夫子面前讲《孝经》——假斯文。

孔夫子偷钱包——文明人不做文明事。

孔夫子的徒弟――闲(贤)人。

孔夫子背书箱——里面大有文章。

孔夫子拜师——不耻下问。

孔夫子搬家——净是书(输)。

孔夫子的砚台——心太黑。

孔夫子下凡——一输到底(地)。

1孔夫子讲学 之乎者也

2孔夫子的嘴巴 出口成章

3孔夫子拿扫 斯文扫地

4孔夫子教三字经 埋没人材

5孔夫子念文章 咬文嚼字 孔夫子的弟子 闲(贤)人

孔夫子的手巾 包输(书)

孔夫子的砚台 黑心

孔夫子的嘴巴 出口成章

孔夫子讲学 之乎者也

孔夫子门前卖《论语》 自不量力;不自量

孔夫子面前讲《孝经》 假斯文;冒充斯文

孔夫子念书 咬文嚼字(比喻过分地斟酌词句。)

孔夫子偷钱包 文明人不做文明事

孔夫子的背包 准是书(输)(比喻注定要失败。)

孔夫子念文章 咬文嚼字

孔夫子的箱子 净输(书)

孔夫子挂腰刀 能文能武;文武双全

孔夫子搬家 净是书(输)(比喻总是失败。)

孔夫子游列国 尽是礼

孔夫子喝卤水 明白人办糊涂事

6孔夫子的手帕 包输(书)

7孔夫子的徒弟

以上就是关于sql计算日期怎么搞全部的内容,包括:sql计算日期怎么搞、关于DB2的日期计算的SQL语句,大神速进、怎样自动计算access2007数据库中两个日期字段的时间差等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9746523.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存