私は実際にテーブルからデータを取得しようとしていますが、テーブルに基づいて "And/Or"の変更が必要でした。私はSQL Serverを使用しています。変数としてAnd-Orを使用する方法
は、私はこのような何かによ:
DECLARE @TURNOS TABLE (ID INT IDENTITY(1, 1),
INITURNO INT,
ENDTURNO INT,
ANDOR VARCHAR(3)
);
INSERT INTO @TURNOS
VALUES (23, 7, 'OR'), (7, 15, 'AND'), (15, 23, 'AND')
そして、私はこのような何かをやろうとしている:
WHILE (@count <= (SELECT COUNT(ID) FROM @TURNOS))
BEGIN
SET @initurno = SELECT INITURNO FROM @TURNOS WHERE ID = @count
SET @endturno = SELECT ENDTURNO FROM @TURNOS WHERE ID = @count
SET @andor = SELECT ANDOR FROM @TURNOS WHERE ID = @count
INSERT INTO @AnotherTable
SELECT *
FROM dbo.TableA
WHERE DATES BETWEEN DATEPART(hh, DATES) >= @initurno @andor DATEPART(hh, DATES) < @enturno
END
は、Iおよび/または変数を使用することができますどのような方法があります私は
@andor
で試したようですか?
ありがとうございます。
ああ、そして私もBETWEEN演算子の使用、GSazheniukに気付かなかった:あなたは
@enturno
を含めたくない場合は、両方のケースのために>=
と<
を使用するために、上のクエリを書き直す必要がありますよりも、 (修正された)。 –