실제로 테이블에서 데이터를 가져 오려고하는데 테이블을 기반으로 "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
내가 및/또는 변수를 사용할 수있는 방법이 있나요
@andor
으로 시도한 것처럼?
아, 그리고 난 운영자 사이의 사용, GSazheniuk 통지를하지 않은 : 당신이
@enturno
을 포함하지 않는 경우는 두 경우 모두에 대한>=
및<
를 사용하는 상위 쿼리를 다시 작성해야하는 것보다 지적 (및 수정). –