新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 软件开发 > Web开发 > Asp教程 > 正文:利用存储过程进行组合查询

利用存储过程进行组合查询

新客网 XKER.COM 2003-11-15 来源: 收藏本文
/*********************************************************************/
/* proc name : P_am_postjob_search */
/* */
/* Description: 申请单查询 */
/* */
/* parameters: @searchtime 申请时间 */
/* @search_poststatus 发布状态 */
/* @search_applystatus 招聘状态 */
/* @job_name 职位名 */
/* @Re_deptid 申请部门 */
/* date: 2003/11/5 */
/* */
/* author: hnsoso@sina.com */
/* */
/* history: */
/*********************************************************************/





create proc P_am_postjob_search
(
@searchtime varchar(5),
@search_poststatus char(1),
@search_applystatus char(1),
@job_name varchar(50),
@Re_deptid varchar(20)
)
as


declare @m_strSqlsearchtime varchar(255)
declare @m_strSqlpoststatus varchar(255) --Sql语句的条件部分
declare @m_strSqlapplystatus varchar(255) --Sql语句的条件部分
declare @m_strSqljob_name varchar(255) --Sql语句的条件部分
declare @m_strSqlRe_deptid varchar(255) --Sql语句的条件部分


select @m_strSqlsearchtime= case
when @searchtime='0' then /*申请时间*/
'select Re_NO,post_id,job_name,Re_num,Re_deptid,Re_applydate,job_poststatus,job_posttype,job_posttype,job_applystatus from am_postjob where 1=1'
else
'select Re_NO,post_id,job_name,Re_num,Re_deptid,Re_applydate,job_poststatus,job_posttype,job_posttype,job_applystatus from am_postjob where '+@searchtime+'>datediff(dd,Re_applydate,getdate())'
end

select @m_strSqlpoststatus= case
when @search_poststatus<>'n' /*发布状态*/
then ' and job_poststatus='''+@search_poststatus+''''
else ''
end
select @m_strSqlapplystatus= case
when @search_applystatus<>'n' /*招聘状态*/
then ' and job_applystatus='''+@search_poststatus+''''
else
''
end
select @m_strSqljob_name= case
when @job_name<>'' /*职位关键字*/
then ' and job_name like ''%'+@job_name+'%'''
else
''
end
select @m_strSqlRe_deptid
= case
when @Re_deptid<>'' /*申请部门ID*/
then ' and Re_deptid='''+@Re_deptid+''''
else
''
end
exec ( @m_strSqlsearchtime + @m_strSqlpoststatus + @m_strSqlapplystatus + @m_strSqljob_name + @m_strSqlRe_deptid +'order by post_id asc')


ASP中调用:
set objcmd=server.CreateObject ("adodb.command")
objcmd.ActiveConnection=cn
objcmd.CommandText="p_am_postjob_search"
objcmd.CommandType=4
objcmd.Parameters.append objcmd.CreateParameter("@searchtime",202,1,5,search_time)
objcmd.Parameters.append objcmd.CreateParameter("@search_poststatus",202,1,1,search_poststatus)
objcmd.Parameters.append objcmd.CreateParameter("@search_applystatus",202,1,1,search_applystatus)
objcmd.Parameters.append objcmd.CreateParameter("@job_name",202,1,50,job_name)
objcmd.Parameters.append objcmd.CreateParameter("@Re_deptid",202,1,20,Re_deptid)
set rs=objcmd.Execute

收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐