私はリストがSELECT
ステートメントである製品のリストをループしたいと思います。今、それをインクリメントするだけINT
変数です:select文のリストをループすることはできますか?
DECLARE @i INT
SELECT @i = 0
WHILE(@i < 100)
BEGIN
...
SET @i = @i + 1
END
これは私が欲しいものではありません。
DECLARE @ids List<INT>
SELECT @ids = (SELECT p.Id FROM Products p WHERE p.Active = 1)
FOR(@id in @ids)
BEGIN
...
END
BEGIN END
セクションでは、これとそれとの文の数行のカップル引き出している:@i
は、(擬似っぽい)の線に沿って何かの文の要素であるように、どのように私はこれを変更することができます最初から@iの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