Предполагая, что параметры являются табличными параметрами, а под "данными" вы подразумеваете строки - для получения всех возможных комбинаций вы используете перекрестное соединение, как и в обычных таблицах:
-- It's better practice to specify the columns but I don't know what your columns are...
SELECT *
FROM @TVP1
CROSS JOIN @TVP2
CROSS JOIN @TVP3
Перекрестное соединение вернет каждую возможную комбинацию между строками обеих таблиц - вот еще один пример, который поможет вам визуализировать это:
DECLARE @T as table
(
Col int
);
INSERT INTO @T (Col) VALUES (0), (1);
SELECT t1.Col As C1,
t2.Col As C2,
t3.Col As C3
FROM @T t1
CROSS JOIN @T t2
CROSS JOIN @T t3
ORDER BY C1, C2, C3
C1 C2 C3
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1