SQL数据库中如何比较两条的日期:并查询间隔

SQL数据库中如何比较两条的日期:并查询间隔,第1张

将两个日期赋值给两个变量,然后去比较,当然,也可以写成一个语句,那会比较长。

字段名你都没有提供,我就下面写,你自己改。

declare @a as datetime

declare @b as datetime

select @a = Cdate from 表名 where lid=1

select @b = Cdate from 表名 where lid=2

select abs(datediff(day,@a,@b))

取了变量,用datediff,以day天数比较,然后可能会产生负数,取个绝对值。

select datediff(day,‘2010-12-1’,‘2010-12-3’)

返回的结果是 2

当然你也可以从表中选择出来的两个的字段,

SELECT datediff(day,date1,date2) FROM date_dbdate_table

返回的是 date2-date1 之间的天数

上面是计算的是在数据库date_db中表date_table中时间时段date1与date2之间的相隔天数

你的时间保存数据类型是什么?date么?如果是date,判断时间点所属范围,如果开始时间属于14-18,结束时间属于9-12,并且时间相减的结果大于1,那么就可以得到结果为,时间相减(得到答案为天)24-时间相减取整数(trunc)17+2,如果如果开始时间属于14-18,结束时间属于9-12,并且时间相减的结果小于1,那么结果为,时间相减(得到答案为天)24-15,其他情况均为时间相减(得到答案为天)24-时间相减取整数(trunc)17。

注:时间相减得到的应该是带有小数的。(这些是可以用case when语句搞定的,不过日期这块可能还需要调整,我仅仅靠想象是想不出来了,还要靠你自己试验)

如果是字符类型的,那么就用 to_date转一下,或者直接计算减法都可以,具体的判断和上面差不多。

create view select funcA() a, from xxx

在该函数 FuncA 中:

因为在函数中本身是不能有dml *** 作的,但我们可以这样实现,参考下面的 存储过程的实现

SQL> select from test1;

A B

---------- --------------------

1 1

3 3

2 2

SQL>

SQL> CREATE or replace PROCEDURE insert_test

2 as

3 PRAGMA AUTONOMOUS_TRANSACTION;

4 BEGIN

5 insert into test1 values(6,6);

6 rollback;

7 END;

8 /

过程已创建。

SQL> begin

2 insert into test1 values(5,5);

3 insert_test;

4 commit;

5 end;

6 /

PL/SQL 过程已成功完成。

SQL> select from test1;

A B

---------- --------------------

1 1

3 3

2 2

5 5

SQL>

这样在函数中可以进行dml *** 作并提交或者回退

然后前台查询的人的信息于是被保留在了数据库中

参考这里>

SQL存在between and,<,>关键字

下面介绍:between and  大于,小于 用法用法;

SQL 如下:

声明变量,declare @T1 date,@T2 datetime,@T3 date

set @T1='2015-08-09'

set @T3='2015-08-12'

set @T2='2015-08-09 08:00:00’

select from Table where convert(date,'2015-08-09 09:00:00)<@T1

select from Table where datetest between @T and @T3

select from Table where datetest>@T and  datetest< @T3

以上就是关于SQL数据库中如何比较两条的日期:并查询间隔全部的内容,包括:SQL数据库中如何比较两条的日期:并查询间隔、SQL 数据库如何计算两个日期的简隔时间,以下图为例!、oracle db 如何用一条sql查询2个时间之间的工作时间间隔等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/sjk/10128134.html

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

发表评论

登录后才能评论

评论列表(0条)

保存