惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
N
Netflix TechBlog - Medium
P
Proofpoint News Feed
D
Docker
J
Java Code Geeks
L
LangChain Blog
Microsoft Security Blog
Microsoft Security Blog
The GitHub Blog
The GitHub Blog
I
InfoQ
Stack Overflow Blog
Stack Overflow Blog
云风的 BLOG
云风的 BLOG
Engineering at Meta
Engineering at Meta
MongoDB | Blog
MongoDB | Blog
月光博客
月光博客
T
Tailwind CSS Blog
M
MIT News - Artificial intelligence
Blog — PlanetScale
Blog — PlanetScale
Google DeepMind News
Google DeepMind News
腾讯CDC
罗磊的独立博客
U
Unit 42
爱范儿
爱范儿
Vercel News
Vercel News
MyScale Blog
MyScale Blog

博客园 - 刘民

系统自用车图标 广州番禺翠湖山庄小区规划图 基于.net开发平台项目案例集锦 【转载】如何利用TortoiseCVS连接sourceforge.net的cvs服务器 Mapserver/Ka-map在桌面Linux下的实验环境搭建笔记 html代码元素列表说明及HTML标记参考手册 在线生成FLASH/CSS/DHTML/Java Script(导航菜单、按钮、滚动条) 在线生成FLASH/CSS/DHTML/Java Script(导航菜单、按钮、滚动条) 网页配色方案 〔转载〕C Java PHP Perl Python 的程序代码美化工具 【转载】常备JS操作 [转]有关UNICODE、ANSI字符集和相关字符串操作的总结! - 刘民 - 博客园 转载:IIS6.0服务器无法访问解决方案总结 小知识:常用到的软件或服务及其使用的端口 [转载]一位湖北大学的学生作品,看后久久不能平静 【转载】Windows平台上jsp虚拟主机环境的架设——Windows2003+IIS6+J2SDK1.4.2+Resin2.1.16 GeoServer翻译计划报道 Dev--Building [转载]网页脚本_title样式 - 刘民 - 博客园
关于存储过程中一个参数表示多个查询条件使用方法的简单处理
刘民 · 2006-11-04 · via 博客园 - 刘民

发现用VS.NET 2005来写存储过程的代码相当方便顺手,题目所说得问题想了半天,晚上回到家里面装了sqlserver再接着试,终于搞定了。享受ING。
数据如下:
表aaa
name       
-----------
1          
2          
3          
4          
5          
6          
7          
8          
9

表bbb
name        old        
----------- -----------
1           11         
2           22         
3           33         
4           44         
5           55         
6           66         
7           77         
8           88         
9           99 

查询aaa中指定name的记录与bbb作联合所得的数据
ALTER PROCEDURE dbo.a

(
 @input varchar(10),
 @input1 varchar(10)
)
AS
 declare @sql varchar(1000)
set @sql=' SELECT aaa.name,bb.old FROM aaa left join (SELECT name,old FROM bbb where name in ('+@input1+')) bb on bb.name=aaa.name where aaa.name in ('+@input+')'

 print @sql
exec (@sql)

执行结果:

运行[dbo].[a] ( @input = 1,2,3,5, @input1 = 2,3 ).

 SELECT aaa.name,bb.old FROM aaa left join (SELECT name,old FROM bbb where name in (2,3)) bb on bb.name=aaa.name where aaa.name in (1,2,3,5)
name        old        
----------- -----------
1           <NULL>     
2           22         
3           33         
5           <NULL> 

想了半天,经过同事提醒,发现原来可以在存储过程中组织查询语句,用execute来执行,得到结果。
立此存照!