求问一个关于在某一段日期内查询的语句!!

zandh 2006-01-12 10:52:35
我现在有如下表:
table: voyage
fields: voy_no eta
SSS 20050102
XXX 20041202
TTT 20051108

我想查询在给定的两个时间参数内的航次,应该如何写?
谢谢各位大侠赐教!!!!!
...全文
100 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
小辉 2006-01-12
  • 打赏
  • 举报
回复
eta 数值型
SELECT voy_no FROM voyage WHERE eta between 20041202 and 20050102
eta 非数值型
SELECT voy_no FROM voyage WHERE eta between '20041202' and '20050102'
gujianmin 2006-01-12
  • 打赏
  • 举报
回复
如果eda为date/datetime类型
SELECT voy_no FROM voyage WHERE eta>'2004-12-02' and eta<'2005-01-02'
-狙击手- 2006-01-12
  • 打赏
  • 举报
回复
SELECT voy_no FROM voyage WHERE cast(eta as int)>20041202 and cast(eta as int)<20051108
zlp321002 2006-01-12
  • 打赏
  • 举报
回复
SELECT
voy_no
FROM
voyage
WHERE eta BETWEEN '开始时间' AND '结束时间'
cen123 2006-01-12
  • 打赏
  • 举报
回复
CREATE TABLE voyage
(
voy_no varchar(20),
eta char(8)
)
GO

INSERT INTO voyage SELECT 'SSS','20050102'
UNION SELECT 'xxx','20041202'
UNION SELECT 'ttt','20051108'

SELECT voy_no FROM voyage WHERE cast(eta as int)>20041202 and cast(eta as int)<20051108

DROP TABLE voyage
cen123 2006-01-12
  • 打赏
  • 举报
回复
eta必须INT型
SELECT voy_no FROM voyage WHERE eta>20041202 and eta<20050102
eta如果是char类型的
SELECT voy_no FROM voyage WHERE cast(eta as int)>20041202 and cast(eta as int)<20050102

zandh 2006-01-12
  • 打赏
  • 举报
回复
谢谢,我还以为要对日进行判断比较呢

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧