powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как данные, сосчитанные с помощью COMPUTE поместить в ту же выборку на основе ко
9 сообщений из 9, страница 1 из 1
Как данные, сосчитанные с помощью COMPUTE поместить в ту же выборку на основе ко
    #32029177
asafr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здраавствуйте! Не подскажите как данные, сосчитанные с помощью COMPUTE поместить в ту же выборку на основе которой они были получены? Т.е. Выполните следующий скрипт в Quary Analyzer и Вы поймете о чем я..

SP> CREATE TABLE #T(N INT)
SP> INSERT INTO #T VALUES(1)
SP> INSERT INTO #T VALUES(2)
SP> INSERT INTO #T VALUES(3)
SP> SELECT * FROM #T COMPUTE SUM(N)
SP> DROP TABLE #T

И еще 2 небольших вопроса:
1. Есть ли в MS SQL 2000 глобальные переменные ??
2. Можно ли создать временную таблицу в пределах одной сессии, которая уничтожалась бы при отключении клиента ? То есть мне нужно чтобы у каждого клиента MS SQL был свой экземпляр данной таблицы - я хочу хранить в ней данные о текущем пользователе.
Заранее всем благодарен.
...
Рейтинг: 0 / 0
Как данные, сосчитанные с помощью COMPUTE поместить в ту же выборку на основе ко
    #32029185
bik_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А так не годится:
\nCREATE TABLE #T(N INT)
INSERT INTO #T VALUES(1)
INSERT INTO #T VALUES(2)
INSERT INTO #T VALUES(3)
SELECT * FROM #T
UNION
SELECT SUM(N) FROM #T
DROP TABLE #T

?
...
Рейтинг: 0 / 0
Как данные, сосчитанные с помощью COMPUTE поместить в ту же выборку на основе ко
    #32029194
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CREATE TABLE #T(N INT)
INSERT INTO #T VALUES(1)
INSERT INTO #T VALUES(2)
INSERT INTO #T VALUES(3)
SELECT * FROM #T
UNION ALL
SELECT SUM(N) FROM #T
DROP TABLE #T

1. Нет
2. Локальные временные таблицы собственно и видны только в пределах одной сессии и автоматически удаляются по окончании batch-а и/или сессии
...
Рейтинг: 0 / 0
Как данные, сосчитанные с помощью COMPUTE поместить в ту же выборку на основе ко
    #32029210
bik_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2Glory:

Я, конечно, понимаю, что хочется казаться чуть круче, чем все.
Но в примере были натуральные числа. Поэтому я не стал писАть ALL.

Сорри, если задел Гуру.
...
Рейтинг: 0 / 0
Как данные, сосчитанные с помощью COMPUTE поместить в ту же выборку на основе ко
    #32029225
Dikobrazz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если попробовать сделать это через CUBE:
CREATE TABLE #T(N INT)
INSERT INTO #T VALUES(1)
INSERT INTO #T VALUES(2)
INSERT INTO #T VALUES(3)

SELECT SUM(N) FROM #T
GROUP BY N WITH CUBE

DROP TABLE #T
...
Рейтинг: 0 / 0
Как данные, сосчитанные с помощью COMPUTE поместить в ту же выборку на основе ко
    #32029257
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2bik_

Мне кажется (по вашим последним сообщниям вообще) вы несколько обостренно относитесь к сообщениям в форуме и принимаете многие из них лично на свой счет. Могу вас уверить, что данное выше мое сообщение не преследовало целью смешать вас с грязью, понизить вашу самооценку и оценку вас участниками форума путем добавления в ваш запрос предложения ALL. А равно как и лишний раз потешить свои амбиции и самолюбие.
Просто я исходил из того, какие числа могут хранится в столбце типа int, а не то, что вопрашающий привел в качестве примера данных, тем более, что он нигде не упомянул про натуральные числа. Можете считать это маленьким уточнением вашего примера. Если же вам не нравится, когда вас уточняют или дополняют, то дайте знать и я постараюсь этого больше не делать.

Кроме того, если говорить о гуризме, то пример от Dikobrazz IMHO лучше моего и вашего решения.
Кроме того я озвучил уже свое мнение по теме моего личного гуризма в топике про XML дерево.


2asafr
Небольшое уточнение насчет глобальных переменных - не существует _пользовательских_ глобальных переменных.
...
Рейтинг: 0 / 0
Как данные, сосчитанные с помощью COMPUTE поместить в ту же выборку на основе ко
    #32029277
asafr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2Glory, спасибо за уточнение о пользовательских глобальных переменах - учту.
Dikobrazz, спасибо - вариант ответа with cube наиболее близок к моему вопросу
All, спасибо за участие
Вывод, который я сделал - прямой ответ на мой вопрос не существует, т.к.
SELECT * FROM #T
UNION
SELECT SUM(N) FROM #T
DROP TABLE #T - первое, что приходит в голову....
Но если кто знает решение проблемы - будет очень интересно
...
Рейтинг: 0 / 0
Как данные, сосчитанные с помощью COMPUTE поместить в ту же выборку на основе ко
    #32029282
Ольга
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>>прямой ответ на мой вопрос не существует

Простите за прямой вопрос: вам в выборке показать или в базе сохранить эту сумму?
...
Рейтинг: 0 / 0
Как данные, сосчитанные с помощью COMPUTE поместить в ту же выборку на основе ко
    #32029329
pik_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шакал я паршивый, на ГУРУ гнать начал.
Glory, приношу извинения насколько возможно...
Вы, как всегда, на высоте!

declare @t table (i int)
insert @t select 1
select * from @t
union all
select sum(i) from @t
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как данные, сосчитанные с помощью COMPUTE поместить в ту же выборку на основе ко
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]