2013-03-25 11 views
2

Я запускаю Microsoft SQL Server 2008 R2 и извлекаю информацию из двух таблиц для создания одной новой таблицы.Обновление одной таблицы SQL на основе данных в другой таблице

В таблице А есть провода с уникальным номером свинца и прочая информация.
Таблица B имеет продажи с уникальным номером продаж и связанным с ним номером свинца.
Данные из обеих таблиц вставляются в таблицы temp в SQL Server, поэтому я могу изменить и обновить все, что мне нужно, и выход этого будет переходить в новую таблицу.

Один вывод из таблицы А может иметь несколько продаж, связанные с ним в таблице В.

Я хочу, чтобы обновить номер столбца продаж в таблице А (Leads), основанный на том, сколько времени, которые приводят число появляется в таблице B (продажи). Таким образом, если таблица B (продажи) имеет лидерство, связанное с семью (7) продажами, столбец «Количество продаж» в таблице A (ведет) будет обновлен до 7.

Я пробовал несколько вариантов, используя функцию COUNT но без успеха. Любая помощь будет оценена по достоинству.

+0

http://stackoverflow.com/a/1216185/1618257 –

+1

Когда вы пробовали некоторые вещи и были проблемы , обычно полезно публиковать то, что вы пробовали. – paddy

ответ

2

Это должно работать для вас, предполагая, что имя поля является leadNo:

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

SQL Fiddle Demo

+0

sgeddes предложение работало. Фантастически простой ответ. Я переусердствовал! Спасибо. –

+0

@ user2195626 - не проблема, рад, что мы могли бы помочь! – sgeddes

Смежные вопросы