sql语句中的case when用法?

php_wsd 2010-07-27 03:13:28
select goodsid,goodsname,case when price='0' then '面议' else price from goods

sql2005中运行的结果是:
无法将 char 值转换为 money。该 char 值的语法有误。

这个如何解决?

我的想法是:当价格为0时,显示面议,当价格不为0时,显示价格。

还有一个问题:如果上面的问题解决了,我还想实现当价格为0时,显示面议,当价格不为0时,显示Price元/Unit(如:5元/个),不知道行不行,Unit是产品的单位字段?
...全文
60 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
php_wsd 2010-07-27
  • 打赏
  • 举报
回复
使用ltrim就正确了
谢谢大家
华夏小卒 2010-07-27
  • 打赏
  • 举报
回复
select goodsid,goodsname,case when price='0' then '面议' else ltrim(price) from goods


给点数据看看
bancxc 2010-07-27
  • 打赏
  • 举报
回复
case when price='0' then '面议' else price
end
百年树人 2010-07-27
  • 打赏
  • 举报
回复
select goodsid,goodsname,
case when price='0' then '面议' else ltrim(price) end
from goods
Andy__Huang 2010-07-27
  • 打赏
  • 举报
回复
select goodsid,goodsname,case when price=0 then '面议' else cast(price as varchar) from goods

34,590

社区成员

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

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