gpt4 book ai didi

sql - 如何删除此表中的日期?

转载 作者:行者123 更新时间:2023-12-03 15:23:19 26 4
gpt4 key购买 nike

我有这样的 table

create table tbl_1(
year int,
month int,
day int
)

insert into tbl_1 values(2009, 11, 30)
insert into tbl_1 values(2010, 3, 4)
insert into tbl_1 values(2011, 5, 13)
insert into tbl_1 values(20011, 12, 24)

我想删除从 2009-11-30 到 2011-5-13 的日期,但我不能,因为所有列都是 int 并且我不能使用这个查询:
delete from tbl_1 
where year >=2009
and year<=2011
and month >=11
and month <=5
and day >=30
and day <=13

..因为: 1 < 月 < 12 和 1 < 日 < 30

我知道这是一个可怕的错误。

我有很多表格使用这种方式保存日期,请帮助我我没有时间删除和重新创建所有表格。

最佳答案

你可以这样做:

DELETE FROM tbl_1 
WHERE (year * 10000 + month * 100 + day) BETWEEN 20091130 AND 20110513

我没有测试过这个。我建议先在测试系统上测试它,然后再在您的生产数据上运行它,这样您就不会意外删除错误的数据。

关于sql - 如何删除此表中的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3570821/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com