SQL 2008 年的 DISTINCT 语句
DISTINCT statement in SQL 2008
如何让 DISTINCT 仅在 'serviceType' 处结束?我试过联合和相交无济于事。
$tsql = "SELECT DISTINCT serviceType, product, provider, rate, qty, updated FROM contracts WHERE client='{$_POST['client']}' ";
我需要查看最新更新的 serviceType 记录以及其他可用信息,但不是我所做的每一个小更改。但是,我想将更改保留为存档。
这就是我在 SQL 服务器中编写该查询的方式:
SELECT distinct main.serviceType, b.product, b.provider, b.rate, b.qty, b.updated
FROM contracts as main
Outer Apply (Select Top 1
serviceType, product, provider, rate, qty, updated
FROM contracts as sub
where main.serviceType = sub.serviceType
Order by updated desc
) b
WHERE client= @client
好的,我知道了:
$tsql = "SELECT distinct main.serviceType, b.product, b.provider, b.rate, b.qty, b.updated
FROM contracts AS main
OUTER APPLY (SELECT TOP 1
serviceType, product, provider, rate, qty, updated
FROM contracts as sub
WHERE main.serviceType = sub.serviceType AND client='{$_POST['client']}'
ORDER BY ID DESC
) b
WHERE client='{$_POST['client']}' ";
谢谢费亚尔。我只需要将 ORDER BY 更改为 ID,因为我在同一天进行了多次更改。
如何让 DISTINCT 仅在 'serviceType' 处结束?我试过联合和相交无济于事。
$tsql = "SELECT DISTINCT serviceType, product, provider, rate, qty, updated FROM contracts WHERE client='{$_POST['client']}' ";
我需要查看最新更新的 serviceType 记录以及其他可用信息,但不是我所做的每一个小更改。但是,我想将更改保留为存档。
这就是我在 SQL 服务器中编写该查询的方式:
SELECT distinct main.serviceType, b.product, b.provider, b.rate, b.qty, b.updated
FROM contracts as main
Outer Apply (Select Top 1
serviceType, product, provider, rate, qty, updated
FROM contracts as sub
where main.serviceType = sub.serviceType
Order by updated desc
) b
WHERE client= @client
好的,我知道了:
$tsql = "SELECT distinct main.serviceType, b.product, b.provider, b.rate, b.qty, b.updated
FROM contracts AS main
OUTER APPLY (SELECT TOP 1
serviceType, product, provider, rate, qty, updated
FROM contracts as sub
WHERE main.serviceType = sub.serviceType AND client='{$_POST['client']}'
ORDER BY ID DESC
) b
WHERE client='{$_POST['client']}' ";
谢谢费亚尔。我只需要将 ORDER BY 更改为 ID,因为我在同一天进行了多次更改。