|
能否再问一下
--use acc
/*
alter procedure usp_qry_xwage_xmonth_en @my_year smallint,@my_month tinyint,@my_dept_str varchar(200) = null,@my_title_str varchar(200) = null,@my_emp_sn_str varchar(200) =null
as
begin
declare @query as varchar(200)
set @query ='select * from uv_wage_month_total where wage_date_year='+str(@my_year)+' and wage_date_month='+str(@my_month)
if @my_dept_str is not null
set @query = @query + ' and dept_no in ('+@my_dept_str +')'
if @my_title_str is not null
set @query = @query + ' and emp_title in ('+@my_title_str+')'
if @my_emp_sn_str is not null
set @query = @query + ' and emp_sn in ('+@my_emp_sn_str+')'
-- 注意:
exec @query
-- 这样能否执行?因为前面的 @query的赋值过程已经和你第一个帖子的赋值过程
-- 完全不同了, 而且现在 @query 赋值的最后结果也全部是字符,我想里面已经不
-- 涉及到数字了,因为里面所有的数字已经全部用 str() 函数转换为字符了
-- 不好意思,我问得比较繁琐一点,主要是我刚学 sql ,问仔细点以后就不用自己再
-- 慢慢捉摸了
end
*/
--exec usp_qry_xwage_xmonth_en @my_year=2002,@my_month=9,@my_dept_str="'HHoffice','HHQA'" |
|