【发布时间】:2020-01-29 13:55:47
【问题描述】:
我在TableTap 中有salesperson´s,我需要根据item 将这些更新到TableNim。 TableTap 有一个日期 tap_Date,我需要获取最新的 salesperson。 Item 是 TableNim 中的唯一值。
TableTap
| salesperson | item | tap_Date
|---------------|-------|-----------
| person1 | item1 | 2020-01-20
| person1 | item1 | 2020-01-21
| person1 | item2 | 2020-01-22
| person2 | item2 | 2020-01-22
| person2 | item3 | 2020-01-23
结果应该是:
TableNim
| salesperson | item |
|---------------|-------|
| person1 | item1 |
| person2 | item2 |
| person2 | item3 |
我尝试了以下方法
UPDATE TableNim SET TableNim.myyja =
(SELECT TOP 1 salesperson FROM TableTap
WHERE spec = 1
and salespersons > ''
and customer > ''
ORDER BY tap_Date DESC)
FROM TableNim, TableTap
WHERE
TableTap.item = TableNim.item
查询的结果是每一行都只有一个相同的销售人员。 有什么帮助吗?
【问题讨论】:
-
您使用的是哪个 dbms? (也许是 MS SQL Server?)
-
是的,MS SQL 服务器
-
稍微绕道...但是 ANSI-92 样式连接已经存在了将近 30 年。是时候更新你的语法了。 sqlblog.org/2009/10/08/bad-habits-to-kick-using-old-style-joins
标签: sql sql-server sql-update