sql 中 数据类型为varchar 查询的时候怎么按照数字大小范围查询?

有一个字段有10万行数据 数据类型是varchar 里面的值都是数字型的有小数位 我的问题就是在asp中利用sql的where查询这个字段的时候 怎么按照数字的大小范围来提取????
希望能有热心的人来帮助我!
请注意 这个字段是varchar字段! 直接用<>不好使

sql2000数据库

直接用> < 啊
比如
select * from 表 where 字段 > 100

---补充
你什么数据库啊。varchar类型也可以用。

create table test(
col1 varchar(2)
)
declare @i int
set @i = 1
while @i< 100
begin
insert into test values(convert(varchar(2),@i))
set @i = @i + 1
end
select * from test where col1 > 50 --正确
select * from test where convert(numeric(10),col1) > 50 --正确
select * from test where col1 > '50' --错误
drop table test

你自己测试吧
如果你非要把类型转成数值型也可以但这是用不到索引了
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-05-31
可以把varchar转换成别的类型
比如 decimal,float之类

例:
select * from 表 where convert(float,字段)>100
相似回答