紧急求救!数据库查询问题!(50分)

Y

yuxuant

Unregistered / Unconfirmed
GUEST, unregistred user!
一表中有一字段(工资等级),字符型,其中记录值有字符型字符如“定额”、“计件”,其他为数值型字符如3.2、8.3、9.1等等
现在想取出工资等级大于11.0的记录,怎么办?请帮忙,谢谢!现在想到数据类型转换:
select 姓名,convert(decimal(3,1),工资等级) from 表1 where 工资等级<>'定额' and 工资等级<>'计件'
但是如何返回取出工资等级大于11.0(或者其他数值)的记录呢?
 
select 姓名,convert(decimal(3,1),工资等级) from 表1 where
工资等级<>'定额' and 工资等级<>'计件' and convert(decimal(3,1),工资等级)>11.0
 
to zwma:
Error converting data type varchar to numeric.
 
select 姓名,工资等级 from 表1 where
工资等级>11.0
 
zwma的语句是对的

你的工资等级中除“定额”、“计件”外,还有其它非数字字符串。
 
你的数据库设计有问题,注意,数据库设计的合理与否,与你的软件质量有很大的关系,你
完全可以将‘工资等级’设计为INT型,然后在前台翻译或另建一个对照表
 
to pengjinlongex
完全同意
 
我的问题已经解决。利用having从句。谢谢各位。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
顶部