sql - 根据一个 SQL 表中的数据更新另一表中的数据

标签 sql count sql-server-2008-r2

我正在运行 Microsoft SQL Server 2008 R2,并从两个表中提取信息来创建一个新表。

表 A 包含具有唯一线索编号和其他信息的线索。
表 B 包含具有唯一销售编号的销售额以及与其关联的潜在客户编号。
两个表中的数据都被拉入 SQL Server 中的临时表,这样我就可以更改和更新我需要的任何内容,并且其输出将进入一个新表。

表 A 中的一个潜在客户可以在表 B 中拥有与其关联的多个销售。

我想根据潜在客户编号在表 B(销售)中出现的次数来更新表 A(潜在客户)中的销售数量列。因此,如果表 B(销售)的潜在客户数量与七 (7) 次销售相关,则表 A(潜在客户)中的销售数量列将更新为 7。

我尝试了使用 COUNT 函数的一些变体,但没有成功。任何帮助,将不胜感激。

最佳答案

假设字段名称为 leadNo,这应该对您有用:

update tablea 
set sales = (select count(*) 
             from tableb 
             where tableb.leadNo = tablea.leadNo)

SQL Fiddle Demo

关于sql - 根据一个 SQL 表中的数据更新另一表中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15621826/

相关文章:

jQuery 计算某个类的 div 数量?

sql - 滚动日期范围内的 BigQuery 非重复计数,列上有分区

mysql - 从四个带有 count 和 sum 列以及 where 子句的 mysql 表中进行选择

excel - SSAS 日期在 Excel 筛选器中不起作用

sql-server - 从 PostgreSQL 查询 SQL Server

sql - 将 varchar 更改为 nvarchar 后网站性能下降

mysql - MySQL 中何时使用单引号、双引号和反引号

mysql - SQL排名查询

sql - 索引 View 在没有索引的情况下编写脚本

sql - 为什么 upsert 不是基本的 SQL 操作