Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
1 / 1 / 0
Регистрация: 27.12.2007
Сообщений: 157

Как выполнить CrossTab на Sql Server?

30.04.2008, 09:49. Показов 1308. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Privet.
u menja est' vot takaja tablica:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
AgrNum  ParamName   ParamValue
----------------------------------
1   dType          1
1   AgrDate        12/12/2001
1   Curr           AMD
1   Amnt           25000
1   Client         Vv
2   dType          2
2   AgrDate        10/12/2000
2   Curr           USD
2   Amnt           10000
2   Client         Pp
2   dGash          10/12/2002
v access-e s pomoshu crosstab query:
SQL
1
2
3
4
5
TRANSFORM FIRST([ParamValue]) AS [The VALUE]
SELECT [AgrNum]
FROM Agreement
GROUP BY [AgrNum]
PIVOT [ParamName];
poluchau sleduushee:
Code
1
2
3
AgrNum  AgrDate         Amnt    Client  Curr    dGash        dType
1   12/12/2001  25000   Vv  AMD          1
2   10/12/2000  10000   Pp  USD 10/12/2002   2

kto-nibud' v kurse kak eto mojno povtori' na Sql Server-e

Zaranee blagodaru.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.04.2008, 09:49
Ответы с готовыми решениями:

Как правильно выполнить подключение в SQL Server 2005
Добрый день, уважаемые знатоки! Подскажите пожалуйста, как правильно выполнить подключение в SQL Server 2005 из VB6.0 ? никак не...

SQL Server 2000 как в файле sql строковую переменную выполнить как инструкцию
Добрый день! Подскажите пожалуйста, как строковую переменную выполнить как инструкцию, например: declare @str varchar(100) declare...

Как настроить MS SQL Server, чтобы через Access, можно было редактировать таблицы MS SQL Server?
ВОПРОС: Как настроить MS SQL Server, чтобы через Access, можно было редактировать таблицы MS SQL Server? MS SQL Server...

5
0 / 0 / 0
Регистрация: 26.12.2007
Сообщений: 435
30.04.2008, 11:23
такое есть, оно выглядит по другому, ищется в бук-онлине MsSql по слову PIVOT первая ссылка. Если нет возможности - пиши на мыло
0
1 / 1 / 0
Регистрация: 27.12.2007
Сообщений: 157
30.04.2008, 12:35  [ТС]
Vozmojnost' est' etot primer ja smotrel, no mne nado bez funkcii agregirovanija,koe-chto ja napisal no etot variant trebuet funkciu agregirovanija i vot chto poluchaetsja:
SQL
1
2
3
4
5
6
7
8
SELECT AgrNum,
    MAX(CASE ParamName WHEN 'dType' THEN ParamValue ELSE NULL END) AS dType,
    MAX(CASE ParamName WHEN 'AgrDate' THEN ParamValue ELSE NULL END) AS AgrDate,
    MAX(CASE ParamName WHEN 'Curr' THEN ParamValue ELSE NULL END) AS Curr,
    MAX(CASE ParamName WHEN 'Amnt' THEN ParamValue ELSE NULL END) AS Amnt,
    MAX(CASE ParamName WHEN 'Client' THEN ParamValue ELSE NULL END) AS Client,
    MAX(CASE ParamName WHEN 'dGash' THEN ParamValue ELSE NULL END) AS dGash
    FROM agreement GROUP BY AgrNum
no max kak-to ne ochen khorosho smotrit'sja.
0
0 / 0 / 0
Регистрация: 26.12.2007
Сообщений: 435
30.04.2008, 12:50
я чесно говоря не очень въехал зачем вообще МАХ или СУМ используется. Но больше других решений я не нашел (
0
1 / 1 / 0
Регистрация: 27.12.2007
Сообщений: 157
30.04.2008, 14:31  [ТС]
net tak ne podkhodit na eto nenujnoe agregirovanie server tratit 76% vremeni i na processor bol'shaja nagruzka, mojet kto eshe chto predlojit.
0
0 / 0 / 0
Регистрация: 07.04.2008
Сообщений: 99
01.05.2008, 01:18
Я в свое время чуть не вывихнул мозги, пытаясь получить примерно то же самое, да еще и с заранее неизвестным количеством как строк, так и столбцов. Вот что у меня работает сейчас:

1. ХП, возвращает последовательно 3 выборки (на клиенте они ловятся посредством Set Rec = Rec.NextRecordset). В первой - строки, допустим, во второй - столбцы, в третьей - сами данные.
2. Первые две делаются посредством SELECT INTO во временные таблицы; сразу после этого - SELECT * FROM ##Tmp_Table_... . Благодаря этому ты можешь ОЧЕНЬ сильно упростить и ускорить третью, кинув на них JOIN, если надо.
3. В конце ХП врем. таблицы дропаешь.
4. На клиенте сохраняешь (в массив, в коллекцию - куда хочешь, я вообще пользовался ListView ) первые две, а третью - либо сохраняешь, либо сразу в дело.

Как это работает: неплохо для экспромта. Мой типичный случай: 20-30 строк, 60-70 столбцов и в третьей выборке 500-600 записей. Так вот все это, включая причесывание на клиенте и раскрашивание грида, отображается примерно за 1.5 - 2 секунды. Устроит?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.05.2008, 01:18
Помогаю со студенческими работами здесь

Как средствами джавы реализовать просмотр базы данных Access, SQL Server, SQL Server Compact и запись в нее?
---

Как можно осуществить репликацию между офисной БД (MS SQL Server) и БД в Интернете (MS SQL Server) ?
Подскажите пожалуйста, как можно осуществить репликацию между офисной БД (MS SQL Server) и БД в Интернете (MS SQL Server) и где об этом...

[Microsoft][ODBC SQL Server Driver][SQL Server]Login failed- User: Reason: Not defined as a valid user of a trusted SQL Server connection
Login failed- User: Reason: Not defined as a valid user of a trusted SQL Server connection Вот такую ошибку выдает. В DSN...

Можно ли выполнить из Access exec proc в SQL Server?
Как мне в аксесе выполнить хранимую процедуру на сервере ms sql 2000 и получить возвращаемый процедурой селект? если да то как? ps:...

На панели запросов в sql server 2008 не горит кнопка Выполнить!
Хочу сделать запрос. Нажимаю "Новый запрос", пишу текст запроса, а вот выполнить его не могу( Почему так?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru