所以,我正在运行一份报告,看看1位客户向我们下了多少次订单。我的大部分数据都是他们的电子邮件,他们购买了多少次,他们的名字,最后的订单日期和最后的订单ID。
我无法弄清楚如何获取该订单中的商品来获取productCode。
这些项目存储在名为Lines的单独表格中,并通过OrderID链接到主要订单。
有没有办法如果每个订单都有多个行来将ProductCodes从这些行放入逗号分隔值?
像这样的东西
BuyerEmail | HowMany | Name | ProductCodes
--------------------------------------------
budyn@bud | 12 | Bud | 1231, 123,
此查询将更好地解释......:
SELECT TOP 1000
o.BuyerEMail
,COUNT(*) HowMany
,o.Name
,o2.OrderID
FROM Orders o
JOIN
(
SELECT
BuyerEmail
,MAX(OrderDate) Latest
FROM Orders
GROUP BY BuyerEmail
) l
ON o.BuyerEmail = l.BuyerEmail
JOIN Orders o2
ON l.BuyerEmail = o2.BuyerEmail
AND l.OrderDate = o2.OrderDate
WHERE Pay != 'PayPal'
GROUP BY
o.BuyerEmail
,o.Name
,l.Latest
ORDER BY
COUNT(*) DESC
是否可以连接细胞? 我只是不知道从哪里开始。
谢谢
答案 0 :(得分:1)
当然有可能,你需要做这样的事情:
select NId_Lista_Surtido,
stuff((select cast(',' as varchar(max))+ cast(nid_detalle_surtido as varchar(max)) <<<--- this is the value being appended
from CES_DLista_Surtido dsurtido <-- this is the detail table
where dsurtido.nid_lista_surtido=tsurtido.nid_lista_surtido <-- this is the condition
for xml path('')),1,1,'') as prueba <-- this is how the col name.
from CES_TLista_Surtido tsurtido <-- this is the main table
这是ouptput
NId_Lista_Surtido prueba
1 95854,95855,95856,95857,95858,95859,95860,95861,95862,95863,95864,95865,95866,95867,95868,95869,95870,95871,95872,95873,95874,95875,95876
这是我的数据的一个工作示例,如果您有疑问,请填写您需要使用的功能。