mysql函数中concat在sqlserver函数中怎么用
2个回答
展开全部
本来程序数据库用的是mysql,后来转为sql server2005,
其中一个sql为:
select * from dbo.sys_person_info t where t.VALID_FLAG>0
and t.dept_id in(select a.dept_code from sys_dept a,sys_dept b
where a.sort_no like concat(b.sort_no,'%') and b.dept_code ='37010001'
)
程序报错:说concat函数不是内置的函数,原来是sql server没有concat这个函数,把代码做了一下修改
代替了concat函数,希望对大家有所帮助:
select * from dbo.sys_person_info t where t.VALID_FLAG>0
and t.dept_id in(select a.dept_code from sys_dept a,sys_dept b
where a.sort_no like b.sort_no + ''+'%' and b.dept_code ='37010001'
)
在oracle里的用法(没有测试):
select * from dbo.sys_person_info t where t.VALID_FLAG>0
and t.dept_id in(select a.dept_code from sys_dept a,sys_dept b
where a.sort_no like b.sort_no || ''|| '%' and b.dept_code ='37010001'
)
其中一个sql为:
select * from dbo.sys_person_info t where t.VALID_FLAG>0
and t.dept_id in(select a.dept_code from sys_dept a,sys_dept b
where a.sort_no like concat(b.sort_no,'%') and b.dept_code ='37010001'
)
程序报错:说concat函数不是内置的函数,原来是sql server没有concat这个函数,把代码做了一下修改
代替了concat函数,希望对大家有所帮助:
select * from dbo.sys_person_info t where t.VALID_FLAG>0
and t.dept_id in(select a.dept_code from sys_dept a,sys_dept b
where a.sort_no like b.sort_no + ''+'%' and b.dept_code ='37010001'
)
在oracle里的用法(没有测试):
select * from dbo.sys_person_info t where t.VALID_FLAG>0
and t.dept_id in(select a.dept_code from sys_dept a,sys_dept b
where a.sort_no like b.sort_no || ''|| '%' and b.dept_code ='37010001'
)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询