sql删除时间
① sql语句:如何删除时间
先建个函数
create function fn_Check(@s varchar(8000))
returns int --返回值-1为有不正常数据,0表示正常
begin
declare @i int
set @i=charindex(',',@s)
while @i>0
begin
--我这里判断都是用的字符串比较,所以如果时间是1:30这样不规则(XX:XX才是规则的)的形式会有点问题,如果不放心可以用convert(datetime,substring(@s,1,@i-1))>convert(datetime,'18:30')来比较就不会出问题了
if substring(@s,1,@i-1)>'18:30' or substring(@s,1,@i-1)<'06:30' return -1
select @s=substring(@s,@i+1,len(@s)-@i),@i=charindex(',',@s)
end
if @s>'18:30' or @s<'06:30' return -1
return 0
end
然后用语句
delete from 表 where dbo.fn_Check(KQ-IN)=-1 or dbo.fn_Check(KQ-OUT)=-1
就可以了,这个是删除整条记录
如果只是删除时间如'6:50,18:40,8:30'要变为'6:50,8:30'
则要改函数的部分判断和输出,最后执行的语句也是update
② sql 语句中以时间为条件删除,怎么写删除语句
你这个是日期格式是要做为一个判断的条件的~
需要进行日期格式转换的~
要嘛,你把你的日期类型转换成字符类型,要嘛,把你输入的字符日期转换为日期格式~
否则无法进行日期格式与字符格式的匹配比较~
比如,你可以使用
to_char(sysdate,'yyyy-mm-dd HH24:mi:ss')
将你数据库的时间格式转换为字符,然后再进行比较
③ SQL语句怎么删除指定日期的数据
删除指定日期后的记录
sql语句:
以删除2004年8月4日到2006年10月25日的数据为例:
delete
from
tb
where
columnname
between
'2004/8/5'
and
'2006/10/25'
如果记录日期的字段为字符串类型的
delete
from
t1
where
t1.datecol='2012-11-06'
如果记录日期的字段为日期类型的
delete
from
t1
where
to_char(t1.datecol,'yyyy-mm-dd')='2012-11-06'
如果记录日期的长度比较长,那就截取字符串,使用substr函数。
④ SQL命令怎么按日期时间字段删除
您好,代码如下:
CREATE TABLE Table1 (Id COUNTER CONSTRAINT PrimaryKey PRIMARY KEY, MyText TEXT (10))
再建一个包含两个字段的表 Table2,字段 id 为长整型,字段 MyText 为文本
代码如下:
CREATE TABLE Table2 (Id LONG, MyText TEXT)
用以下语句建立 Table1 和 Table2 的一对多关系,级联更新,级联删除:
代码如下:
ALTER TABLE Table2 ADD CONSTRAINT Relation1 FOREIGN KEY ([Id]) REFERENCES Table1 ([Id]) ON UPDATE CASCADE ON DELETE CASCADE
删除关系用以下语句:
代码如下:
ALTER TABLE Table2 DROP CONSTRAINT Relation1
删除 Table1 用以下语句:
代码如下:
DROP TABLE Table1
设定某字段为主键
代码如下:
ALTER TABLE 表1 ALTER COLUMN [id] COUNTER CONSTRAINT MyPrimaryKey PRIMARY KEY
增加一个字段 MySalary
代码如下:
alter table AAA add COLUMN MySalary CURRENCY
删除一个字段 MySalary
代码如下:
alter table AAA drop COLUMN MySalary
⑤ sql语句如何删除一段时间内的记录
1、使用BETWEEN关键字根据时间字段删除一定时间内的记录
DELETEFROM表名WHERE时间字段BETWEEN开始时间AND结束时间
示例:
'2017-01-0100:00:00'AND'2017-02-0100:00:00'
--删除tb表中2017年1月1日到2017年2月1日的数据
2、使用时间字段比较大小来确定删除范围
--语法:
DELETEFROM表名WHERE时间字段>=开始时间AND时间字段<=结束时间
示例:
DELETEFROMtbWHERECreateTime>='2017-01-0100:00:00'ANDCreateTime<='2017-02-0100:00:00'
⑥ sql语句如何删除一段时间内的记录
1、使用BETWEEN关键字根据时间字段删除一定时间内的记录
DELETEFROM表名WHERE时间字段BETWEEN开始时间AND结束时间
示例:
'2017-01-0100:00:00'AND'2017-02-0100:00:00'
--删除tb表中2017年1月1日到2017年2月1日的数据
2、使用时间字段比较大小来确定删除范围
--语法:
DELETEFROM表名WHERE时间字段>=开始时间AND时间字段<=结束时间
示例:
DELETEFROMtbWHERECreateTime>='2017-01-0100:00:00'ANDCreateTime<='2017-02-0100:00:00'
⑦ SQL如何用语句将日期后面的时间去掉
1、创建测试表,
create table test_times(id number, v_time timestamp);
⑧ SQL数据库如何删除一部分时间段的数据
你是要删除这个ascfrt8数据中所有表里2020年1月1日-2021年7月23日内的数据还是某一张表里的数据,如果是所有表,需要一张表一张表进行删除,如果只是某张表,删除某张表的数据就可以,删除语句就是:delete from 表名称 where 时间字段 between '2020-01-01' and '2021-01-23'