关于 sybase ASE 15.5,我还有另一个(可能)非常容易回答的问题......不是我的热门话题 :-(
我有一个包含日期列的临时表。
使用转换实时数据的转换将日期插入临时表
从
例如:
2013-01-21 10:05:00.0
2013-01-28 08:03:00.0
至
21/01/2013
28/01/2013
using (CONVERT(VARCHAR(10), DATEFIELD, 103)
我面临的问题是当我尝试使用日期范围过滤器将 LIVE 表中的数据选择到临时表中时:
WHERE (CONVERT(VARCHAR(10), DATEFIELD, 103) BETWEEN '21/01/13' AND '28/01/13')
....当我运行这个 sybase 时,只插入 21/01/2013 日期,而不是 28/01/2013。
.....此外,如果我使用 29/01/2013 作为结束日期,即
WHERE (CONVERT(VARCHAR(10), DATEFIELD, 103) BETWEEN '21/01/13' AND '29/01/13')
我都插入了:
21/01/2013
28/01/2013
此外 - 如果我只运行 21/01/13 即
WHERE (CONVERT(VARCHAR(10), DATEFIELD, 103) BETWEEN '21/01/13' AND '21/01/13')
我什么也没得到。
有任何想法吗?
也许在 sybase 中使用 BETWEEN 并不好。为了清楚起见,这些字段已从 DATETIME 转换为 VARCHAR (10)。
我遇到的另一个问题是,当我进行第一部分修复时,我希望能够在例如
WHERE (CONVERT(VARCHAR(10), DATEFIELD, 103) BETWEEN '%' AND '%')
....但目前这个也不起作用。
任何想法都是关于这些问题中的一个/两个。
提前致谢。
加雷斯