トン-SQLの組み合わせを配置し、Nポジション:私がしなければならないだろうと想定トン-SQL k値の組み合わせ、nはk値の
K Values
'A', 'B'
N Positions -- can be any value
Result if N = 2:
'A', 'A'
'A', 'B'
'B', 'A'
'B', 'B'
Result if N = 3:
'A', 'A', 'A'
'A', 'A', 'B'
'A', 'B', 'A'
'A', 'B', 'B'
'B', 'A', 'A'
'B', 'A', 'B'
'B', 'B', 'A'
'B', 'B', 'B'
から1 CROSS自体すなわちへのJOINのは、動的なT-SQLを使用します?
I.e.ときN = 2
WITH CTEValues(Value) AS (
SELECT 'A' UNION SELECT 'B'
)
SELECT c1.Value AS A, C2.Value AS B
FROM CTEValues c1
CROSS JOIN CTEValues c2
ORDER BY c1.Value, c2.Value
または3
WITH CTEValues(Value) AS (
SELECT 'A' UNION SELECT 'B'
)
SELECT c1.Value AS A, C2.Value AS B, C3.Value
FROM CTEValues c1
CROSS JOIN CTEValues c2
CROSS JOIN CTEValues c3
ORDER BY c1.Value, c2.Value, c3.Value
旋回し、その後アンピボット使用する離れがない限り?
何が質問ですか?それは任意のkとnのために働く方法? – Alex
'ダイナミックSQL'を使用します – Squirrel
出力はclear.inputはclear.whatではありませんテーブルデザインとは何ですか? – KumarHarsh