1
有,我可以执行条件参加像这样的方式:的SQL Server +有条件加入
CREATE TABLE #Entity
(
[AutoID] [int],
[Code] [nvarchar](50) NOT NULL,
)
INSERT #Entity
EXEC Entity_GetEntitiesByUserId @UserID
DECLARE @Condition bit = 0
SELECT * FROM [Stuff] s
IF @Condition = 1 BEGIN
INNER JOIN
(
SELECT Code as eCode from
#Entity
) e
ON E.eCode = s.EntityCode
END
WHERE DeletedBy IS NULL
感谢。
我不认为这是意图。当@Condition = 1时,结果应该包含'#Entity'表中的列,不是吗?我认为你已经假定OP的代码读取,'SELECT s。* FROM [Stuff] s ...' – onedaywhen 2012-04-19 08:06:28
@onedaywhen由于OP从第二个表中选择只有e.ecode,它是s.entitycode的副本,我认为这是一个公平的假设.. – Aprillion 2012-04-19 08:18:47
刚才我观察到条件应该是'条件= 0或...' – 2012-04-19 08:40:09