【发布时间】:2013-07-29 00:40:35
【问题描述】:
我是 SQL 新手,很难弄清楚如何实现我想要做的事情。目前,我的测试人员手动创建一个文件,其中包含所有可能的输入以通过我们的程序。我想要做的是创建一个存储过程,它接收一些输入表并为它们设置每个可能的输入。目前我有两张桌子。第一个是 TestFileColumnHeaders,有两列,ColumnID 和 ColumnName,格式为
ColumnID 列名
_ _ _ _ _ _ _ _ _
1 Foo
2 酒吧
3巴兹
此表用于正在创建的输入文件的标题。然后我有一个可能的输入表,称为 TestFileColumnInfo 列 ColumnID 和 ColumnInfo 格式为
ColumnID ColumnInfo _ _ _ _ _ _ _ _ _ 1 Foo1 1 Foo2 2 Bar1 2 Bar2 3 Baz1
我想要的 proc 输出是一个类似
的表格Foo Bar Baz
_ _ _ _ _ _
Foo1 Bar1 Baz1
Foo1 Bar2 Baz1
Foo2 Bar1 Baz1
Foo2 Bar2 Baz1
我尝试了笛卡尔连接,但我不想让 Foo1 和 Foo2 出现在输出的同一行中,这就是我卡住的地方。仅适用于无限数量的标头和输入。有没有办法在 T-SQL 中做到这一点?我需要将桌子的设计更改为其他东西吗?也很抱歉,如果编辑关闭。我不知道如何为我的标题和下划线保持正确的间距
【问题讨论】:
标签: sql sql-server-2005 testing