Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 помогите извлечь данные из временной таблицы  [new]
isec
Member

Откуда:
Сообщений: 23
CREATE PROCEDURE Sales
AS
BEGIN
SELECT tovar_id, sum(count) as 'количество проданных товаров'
FROM Jurnal_zakazov j
GROUP BY tovar_id
END
EXEC Sales


CREATE PROCEDURE VARTABLE
AS
BEGIN
CREATE TABLE #Jurnal_zakazovVar(
tovar_id1 INT NOT NULL,
count1 INT NOT NULL)
INSERT INTO #Jurnal_zakazovVar EXEC Sales
SELECT tovar_id1, MAX(count1), MIN(count1)
FROM #Jurnal_zakazovVar
END
EXEC VARTABLE

GO


имеются две процедуры, одна из них выводит количество проданных товаров в журнале товаров, сгруппированных по tovar_id, вторая создает временную таблицу, куда кладет вывод из процедуры Sales

проблема в том, что не получается выполнить SELECT по tovar_id1 и сделать что-то типа Jurnal_zakazovVar JZ inner join Tovar T так как не знаю как сделать внешний ключ на временную таблицу

помогите пожалуйста
24 июн 13, 21:40    [14476693]     Ответить | Цитировать Сообщить модератору
 Re: помогите извлечь данные из временной таблицы  [new]
invm
Member

Откуда: Москва
Сообщений: 9845
Для
isec
Jurnal_zakazovVar JZ inner join Tovar T
никакие внешние ключи не нужны.
24 июн 13, 21:58    [14476769]     Ответить | Цитировать Сообщить модератору
 Re: помогите извлечь данные из временной таблицы  [new]
isec
Member

Откуда:
Сообщений: 23
invm
Для
isec
Jurnal_zakazovVar JZ inner join Tovar T
никакие внешние ключи не нужны.


тогда каким образом выполнить выборку из временной таблице по функциям max и min и вывести наименование товара?(
24 июн 13, 22:09    [14476818]     Ответить | Цитировать Сообщить модератору
 Re: помогите извлечь данные из временной таблицы  [new]
isec
Member

Откуда:
Сообщений: 23
isec,

(строк обработано: 33)
Сообщение 8120, уровень 16, состояние 1, процедура VARTABLE, строка 8
Столбец "#Jurnal_zakazovVar.tovar_id1" недопустим в списке выбора, поскольку он не содержится ни в агрегатной функции, ни в предложении GROUP BY.


вот еще какая проблема(
24 июн 13, 22:12    [14476827]     Ответить | Цитировать Сообщить модератору
 Re: помогите извлечь данные из временной таблицы  [new]
MyNiGoo
Member

Откуда:
Сообщений: 233
isec, вам же показали текст ошибки. Приведите к виду

SELECT tovar_id1, MAX(count1), MIN(count1)
FROM #Jurnal_zakazovVar
GROUP BY tovar_id1
25 июн 13, 10:15    [14477977]     Ответить | Цитировать Сообщить модератору
 Re: помогите извлечь данные из временной таблицы  [new]
PaulYoung
Member

Откуда: Москва
Сообщений: 2567
isec,

а если наименование товара надо, то как-то так
SELECT
  t1.tovar_id1,
  t2.tovar_name,
  MAX(t1.count1) as max_cnt,
  MIN(t1.count1) as min_cnt
FROM #Jurnal_zakazovVar t1
JOIN Tovar t2 ON t2.tovar_id = t1.tovar_id1
GROUP BY
  t1.tovar_id1,
  t2.tovar_name
25 июн 13, 10:20    [14478005]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить