SQL查询/不存在';t一

SQL查询/不存在';t一,sql,sql-server-2008,Sql,Sql Server 2008,给我一点工作背景。我们使用一个定制的应用程序,从产品作为订单进入我们的ERP系统到产品发货这段时间内,我们可以看到正在生产的产品 我们的ERP有一个产品标题表和一个产品详细信息表。我们使用的自定义应用程序只查看产品详细信息表。因此,当需要运送这些产品时,他们希望能够看到订单组合在一起 INSERT INTO @tmpTable (ordernum, linenum, model, customer, duedate, status, stage, repcode) SELECT ct.

给我一点工作背景。我们使用一个定制的应用程序,从产品作为订单进入我们的ERP系统到产品发货这段时间内,我们可以看到正在生产的产品

我们的ERP有一个产品标题表和一个产品详细信息表。我们使用的自定义应用程序只查看产品详细信息表。因此,当需要运送这些产品时,他们希望能够看到订单组合在一起

INSERT INTO @tmpTable (ordernum, linenum, model, customer, duedate, status, stage, repcode)

SELECT
    ct.ordernum,
    ct.linenum,
    et.model,
    et.customer,
    ct.duedate,
    ct.status
    ct.stage,
    ct.repcode
FROM CustomTable ct
LEFT JOIN ERPTable et On et.ordernum = ct.ordernum AND et.linenum = ct.linenum


Select Distinct
    top1.ordernum,
    top1.customer,
    (
        Select
            ISNULL(linenum, '') AS linenum,
            ISNULL(model, '') AS model,
            ISNULL(duedate, '') AS duedate,
            ISNULL(status, '') AS status,
            ISNULL(stage, '') AS stage,
            ISNULL(repcode, '') AS repcode
        From @tmpTable
        Where ordernum = top1.ordernum
        For XML Path('LineItem'), ROOT('root')
    ) As xmlinfo
From @tmpTable as top1
这就是我目前处理这件事的方式,我似乎找不到更好的方法来建立一对多的关系,而这种关系是没有的。我只是将所有“行”编译为xml,而不是针对每个订单分别调用DB。实际的查询要长得多,需要将多个连接与ERP表连接起来,这反过来会使查询速度减慢一点。我想知道我这样做是否有效

我想也许我可以用GROUPBY和SQL来完成这项工作,但事实似乎并非如此,而且我似乎找不到一个好方法来模仿使用Angular对SSRS报告进行分组的方式

我做了一些挖掘,似乎实现这一点的方法是使用ng repeat on标记


--在HTML/角度级别处理分组是否更好?或者我应该坚持SQL Server端的分组吗?

我忽略了用于标识哪些行属于哪个顺序的标准/规则……@LelioFaieta每一行都由ordernum和linenum标识(这基本上使其具有唯一性)。