sql中拼接字段

来源:百度知道 编辑:UC知道 时间:2024/06/08 11:04:28
select (Prod_Name+Prod_Model) as Name_Model from OrdersInfo where Orde_ID = 10000
如果所查询的数据中只有名称没有型号那查询出来的结果Name_Model就为null 如果名称和型号都有才显示正确值 哪位朋友能解决 第一个解决的给分

什么数据库?
Oracle数据库:
select (nvl(Prod_Name,'')+nvl(Prod_Model,'')) as Name_Model from OrdersInfo where Orde_ID = 10000

SYBASE/SQLSERVER数据库:
select (isnull(Prod_Name,'')+isnull(Prod_Model,'')) as Name_Model from OrdersInfo where Orde_ID = 10000

Prod_Name,Prod_Model都是数值类型是么。。
你给他们默认值0.如果空就等于0.。
数据库里你拿一个null和一个数值加 他不认识

SELECT
CASE WHEN (ISNULL(Prod_Model) OR Prod_Model='') THEN 'NULL'
ELSE Prod_Name+Prod_Model
END
as Name_Model from OrdersInfo where Orde_ID = 10000

确定 2个字段是可以相加的
default = 0
然后再执行您的语句
顺利OK。。。

select (Prod_Name+''+Prod_Model) as Name_Model from OrdersInfo where Orde_ID = 10000

上面的回答是错误的 我只能用程序弄了 ...

有时间再查吧 . .