我有三个表,table1:包含客户详细信息,table2:包含uniq代码,table3:每个购买的商品包含1行。购买的商品数量从1到n。
table1:随着业务的发展,数据每隔几分钟就被导入一次 ID,帐户,电子邮件地址,transactionID
表2: ID,uniqcode
表3:随着业务的发展,每隔几分钟就会导入数据 ID,帐户,transactionID,商品
我加入了ID,这会给我这样的东西: 从table1中选择* 在table1.transactionID = table3.transactionID上连接table3 在table3.ID = table2.ID
上加入table2这导致:
emailaddress1,item1,uniqcode1 emailaddress1,item2,uniqcode2 emailaddress1,item3,uniqcode3 emailaddress2,item1,uniqcode4 emailaddress2,item2,uniqcode5
我想最终得到这样的结果 emailaddress1,item1,uniqcode1,item2,uniqcode2,item3,uniqcode3 emailaddress2,item1,uniqcode4,item2,uniqcode5,null,null
为什么麻烦?因为我们的批量发送器只能处理“扁平”表格,并且我想发送1封包含uniq代码数量的电子邮件(他们每购买一件商品就会获得1件),他们有权使用而不是包含单个数量的电子邮件码。代码由第三方提供。所有这些都需要在mssql中完成。一个视图将用于让批量邮件程序认为它实际上是在查看单个表。
我该怎么做?