我想通過產品清單循環,清單是SELECT
聲明。現在,它只是一個INT
變量遞增:我可以循環選擇語句的列表嗎?
DECLARE @i INT
SELECT @i = 0
WHILE(@i < 100)
BEGIN
...
SET @i = @i + 1
END
這不是我想要的。我如何修改這個讓@i
是一個語句的元素,沿(僞ISH)線的東西:
DECLARE @ids List<INT>
SELECT @ids = (SELECT p.Id FROM Products p WHERE p.Active = 1)
FOR(@id in @ids)
BEGIN
...
END
的BEGIN END
節拉出這一點,並與一對夫婦的陳述的幾行從第一個id的產品。但我認爲我可以創建一個活動產品列表,而不是在BEGIN END
部分的所有語句中添加AND p.Active = 1。這是使用Microsoft SQL Server Management Studio的Microsoft SQL Server。
什麼數據庫反對? SQL Server,MySQL,別的東西?例如SQL Server有遊標,它可以讓你做你想做的事(我認爲)。 – MarcinJuraszek
標記您正在使用的dbms。該代碼遠離ANSI SQL兼容。 – jarlh
請標記您的DBMS。 – McNets