【发布时间】:2016-08-12 20:45:26
【问题描述】:
【问题讨论】:
-
您有三个
WHERE声明...您可以将其发布为文字而不是图片...? -
将第二个
WHERE改为AND -
能打印出ssql的值吗?您还应该能够将该值粘贴到新查询的 SQL 视图中,这可以帮助您进行调试。
【问题讨论】:
WHERE 声明...您可以将其发布为文字而不是图片...?
WHERE改为AND
去掉 from 后面的 (
.....FROM ";
sSQL += "[ComponentText] .....
而不是
sSQL += "([ComponentText] ...
【讨论】:
好吧,我不确定到底出了什么问题,但我确实修改了 SQL 并让它工作。使用 SELECT FROM (SELECT ) AS Q ... WHERE Component.Text IN (SELECT ) 涉及的修订。
这是有效的 sSQL:
SELECT Q.[ComponentCounter] FROM (SELECT [ComponentText].[ComponentCounter],[ComponentText].[TextId],[ComponentText].[Text] FROM [ComponentText] WHERE [ComponentText].[TextId] = @bomgroupid AND [ComponentText].[Text] = @bomdevice) AS Q INNER JOIN [Connection] as P ON Q.[ComponentCounter]=P.[CompCounter] WHERE Q.[ComponentCounter] IN (SELECT [ComponentText].[ComponentCounter] FROM [ComponentText] WHERE [ComponentText].[TextId] = 160040 AND [ComponentText].[Text]= @type );
我没有使用别名的习惯,但它确实有助于简化这条 SQL 语句,对我自己和 MS Access 都是如此。我必须记住这一点。感谢大家的帮助。
【讨论】: