テーブルノードがあります。その特定のノードタイプの同じ ID 番号を同じ範囲 (たとえば 1 から 9999) にし、別のノードタイプを 1000 から 1999 の別の範囲にする必要があります。これを行う方法の例を教えてください。これは SQL クエリです。
質問する
48 次
1 に答える
1
DECLARE @T TABLE (NODEDE_ID BIGINT)
INSERT INTO @T VALUES
(170999000),
(172677777),
(177333335)
;WITH CTE AS
(
SELECT NODEDE_ID,ROW_NUMBER() OVER (ORDER BY NODEDE_ID) [ROW_NUM]
FROM @T
)
SELECT NODEDE_ID,
CAST(CASE WHEN (ROW_NUM > 1)
THEN (ROW_NUM - 1) * 1000
ELSE 1
END AS VARCHAR) + ' to ' +
CAST(CASE WHEN (ROW_NUM > 1)
THEN ((ROW_NUM - 1) * 1000) + 999
ELSE 999
END AS VARCHAR) [RANGE]
FROM CTE
于 2012-12-05T11:13:03.747 に答える