【发布时间】:2017-11-30 18:25:50
【问题描述】:
我实际上是在尝试从表中获取数据,但我希望“和/或”根据表进行更改。我正在使用 SQL Server。
我喜欢这样的事情:
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 一样?
提前致谢:)
【问题讨论】:
标签: sql sql-server variables table-variable