SQLSERVER 2008 select 语句 where

365Marathon 2012-12-04 10:06:47
为什么我这样写,却把1111给查出来了(Scores表,我存的是Naverchar类型的)

应该怎么修改?


...全文
369 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
PB菜鸟 2012-12-10
  • 打赏
  • 举报
回复
引用 6 楼 lixzhong 的回复:
*1 隐式转化为 int
kernelyk 2012-12-10
  • 打赏
  • 举报
回复
学习了....
无涯大者 2012-12-08
  • 打赏
  • 举报
回复
引用 8 楼 DBA_Huangzj 的回复:
SELECT Scores FROM V_score WHERE Scores<N'60' 但是更好的方法还是换成数值型
学习了.
坚_持 2012-12-08
  • 打赏
  • 举报
回复
这个也可以 SELECT Scores FROM V_score WHERE convert(int,Scores)<60
rfq 2012-12-06
  • 打赏
  • 举报
回复
应该选出 ,没有问题 go 根据排序规则 , ‘11111’<'60' 所以选出
發糞塗牆 2012-12-04
  • 打赏
  • 举报
回复
SELECT Scores FROM V_score WHERE Scores<N'60' 但是更好的方法还是换成数值型
365Marathon 2012-12-04
  • 打赏
  • 举报
回复
谢谢大家,已解决!
开启时代 2012-12-04
  • 打赏
  • 举报
回复
*1 隐式转化为 int
365Marathon 2012-12-04
  • 打赏
  • 举报
回复
首先谢谢各位友友热心回答、 列不能定义为 int, 因为有的课程成绩还要存“优良中差”的 楼上Scores*1<60 可以select对啦,但是这是什么意思,转化为int吗?
开启时代 2012-12-04
  • 打赏
  • 举报
回复
列Scores 定义为 int ,下面执行下: alter table Scores alter column Scores int
  • 打赏
  • 举报
回复
Scores*1<60
365Marathon 2012-12-04
  • 打赏
  • 举报
回复
那该怎么解决呢,万能的CSDN友友?
开启时代 2012-12-04
  • 打赏
  • 举报
回复
Scores 这个字段定义 是字符类型的原因
love灵灵 2012-12-04
  • 打赏
  • 举报
回复
SELECT Scores FROM V_score WHERE Scores<N'60' 这个是什么意思呢?隐式转换为整型?除了N是不是还有其他的?
helloworldysn 2012-12-04
  • 打赏
  • 举报
回复
楼上的很好哦!
陈永富 2012-12-04
  • 打赏
  • 举报
回复
引用 8 楼 DBA_Huangzj 的回复:
SELECT Scores FROM V_score WHERE Scores<N'60' 但是更好的方法还是换成数值型
这个好

34,594

社区成员

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

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