34,590
社区成员
发帖
与我相关
我的任务
分享
CREATE TABLE A (condition1 varchar(99),condition2 varchar(99));
INSERT INTO A VALUES('A3','001'),('A4','002'),('A5','003');
CREATE TABLE B (h varchar(99),c varchar(99));
INSERT INTO B VALUES('A3','001'),('A4','004'),('A5','003');
SELECT * FROM B WHERE EXISTS(SELECT * FROM A WHERE A.condition1=B.h AND A.condition2=B.c)
DROP TABLE A;
DROP TABLE B;
DECLARE @SQL VARCHAR(8000)
SET @SQL=''
SELECT @SQL=@SQL+'OR(h='''+condition1+''' AND C='''+condition2+''')' FROM A
IF LEN(@SQL)>0
SET @SQL='WHERE '+STUFF(@SQL,1,2,'')
ELSE
SET @SQL=''
SET @SQL='SELECT * FROM B '+@SQL
PRINT @SQL