hel*_*ght 2 sql t-sql sql-server
编辑:Date当然,购买包含一个名为的列.我的错.
我有一个表,Purchases有列CustomerId,PhoneNumber和Purchase,Price和Date.
我想将有关客户的信息移到新表中Customers.那包含CustomerId和PhoneNumber.
具有相同的行CustomerId可以多次出现Purchases,我只想要每个行的最新行CustomerId,因为它将包含该PhoneNumber客户的最新行.
我读了一些关于DISTINCT但是从我所理解的用于查找唯一行的内容(对吧?).
我已经尝试了一些内部连接的东西,但由于我是初学者,我不觉得如果我发布它会有很大贡献:)
尝试这样的事情:
;WITH MyCustomerRows As
(
SELECT ROW_NUMBER() OVER(PARTITION BY CustomerID ORDER BY [Date] DESC) AS CustomerIndex
,CustomerID
,PhoneNumber
FROM Purchases
)
INSERT INTO NewCustomerTable(CustomerID,PhoneNumber)
SELECT CustomerID,PhoneNumber
FROM MyCustomerRows
WHERE CustomerIndex =1 --this will pick just the first row, which is the newest...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
73 次 |
| 最近记录: |