powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Экспорт в Excel 6000 колонок
23 сообщений из 23, страница 1 из 1
Экспорт в Excel 6000 колонок
    #39876809
Фотография vah
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скажите пожалуйста, как можно наилучшим образом выгрузить данные из динамического запроса,
который возвращает 6000 колонок?

Заранее благодарен.
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876816
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vahиз динамического запроса, который возвращает 6000 колонок?А что говорит автор сего сумеречного творения?

З.Ы. А, да, чем не устраивает любой способ, который позволяет выгрузить данные из динамического запроса, в котором от 1 до 5999 колонок?
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876846
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vah... данные из динамического запроса,
который возвращает 6000 колонок?
В Oracle 12 количество колонок (полей) в запросе специально ограничено 1000-ю.
Наверно намаялись с энтузиастами и их хотелками.
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876850
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
6000, Карл !!! Шедеврально.
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876851
Фотография vah
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей Алексеевич,

на самом деле чуть больше 6000 )
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876857
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argo6000, Карл !!! Шедеврально.
vahна самом деле чуть больше 6000 )
Тогда, это чуть больше чем 'Шедеврально.'
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876862
Фотография vah
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monsterL_argo6000, Карл !!! Шедеврально.
vahна самом деле чуть больше 6000 )
Тогда, это чуть больше чем 'Шедеврально.'

на самом деле сейчас данные выгружаются на клиенте в циклах, но работает это ооочень долго. хочу переделать это чтоб данные готовились на серваке.
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876900
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vah... данные выгружаются на клиенте ...
А кто клиент?
Хотелось бы взглянуть на человека, способного анализировать данные по 6000 полей.
Похоже вы разбаловали вашего заказчика...
Стоит один раз не послать нахрен типа, сказавшего "А вот хочу, чтобы видеть одновременно ...сот полей!" как болезнь начинает прогрессировать.
В вашем случае это крайняя степень запущенности.
Что будете делать, когда он захочет миллион?
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876905
Фотография vah
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008vah... данные выгружаются на клиенте ...
А кто клиент?
Хотелось бы взглянуть на человека, способного анализировать данные по 6000 полей.
Похоже вы разбаловали вашего заказчика...
Стоит один раз не послать нахрен типа, сказавшего "А вот хочу, чтобы видеть одновременно ...сот полей!" как болезнь начинает прогрессировать.
В вашем случае это крайняя степень запущенности.
Что будете делать, когда он захочет миллион?

не, там фишка в том, что этот Excel потом загружается в какую-то систему, которая анализирует это
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876908
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vahSQL2008пропущено...

А кто клиент?
Хотелось бы взглянуть на человека, способного анализировать данные по 6000 полей.
Похоже вы разбаловали вашего заказчика...
Стоит один раз не послать нахрен типа, сказавшего "А вот хочу, чтобы видеть одновременно ...сот полей!" как болезнь начинает прогрессировать.
В вашем случае это крайняя степень запущенности.
Что будете делать, когда он захочет миллион?

не, там фишка в том, что этот Excel потом загружается в какую-то систему, которая анализирует это
Хорошо, но зачем в Excel-то??? Есть много гораздо более удобных и компактных форматов.
Заканчивая тем, что не использовать Excel как промежуточное звено.
Почему нельзя сразу передать данные?
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876909
Фотография vah
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008vahпропущено...


не, там фишка в том, что этот Excel потом загружается в какую-то систему, которая анализирует это
Хорошо, но зачем в Excel-то??? Есть много гораздо более удобных и компактных форматов.
Заканчивая тем, что не использовать Excel как промежуточное звено.
Почему нельзя сразу передать данные?

может XML предложить?
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876910
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008Хотелось бы взглянуть на человека, способного анализировать данные по 6000 полей.6000 записей в таблице тоже неудобно пролистывать, но в БД иногда встречается и больше :-)
Скорее, этот эксельный лист никто никогда не читал, он используется как источник данных для расчётов.

Конечно, можно сказать, "переносите всё в оракл/сиквел/етц":SQL2008Стоит один раз не послать нахрен типа, сказавшего "А вот хочу, чтобы видеть одновременно ...сот полей!" как болезнь начинает прогрессировать.Но компания хочет использовать эти активы, и не понимает, сколько денег она получит за переписывание эксельной базы, например, на сиквел и веб-приложение.

Соответственно, услышав "послать нахрен", они могут найти другого подрядчика, который просто хочет денег, а не "учить", и выполнит этот простенький заказ без посылания клиента.

Я тоже делал такие выгрузки для клиента, сотни полей, миллионы строк, и некие расчёты (по множеству связанных эксельных файлов). Платят деньги - выгружаю, не отказываюсь. Переписывать за стоимость выгрузки не подряжаюсь.
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876911
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008vahне, там фишка в том, что этот Excel потом загружается в какую-то систему, которая анализирует это
Хорошо, но зачем в Excel-то??? Есть много гораздо более удобных и компактных форматов.
Заканчивая тем, что не использовать Excel как промежуточное звено.
Почему нельзя сразу передать данные?Потому что эти файлы - результат нескольких лет работы специалистов, наваявших эти расчёты.
Не было у них других инструментов.
Они забивали данные руками, потом стали выгружать из каких то источников.
XML ещё не существовало, когда они это делали.
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876930
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvg Я тоже делал такие выгрузки для клиента, сотни полей, миллионы строк, и некие расчёты (по множеству связанных эксельных файлов). Платят деньги - выгружаю, не отказываюсь. Переписывать за стоимость выгрузки не подряжаюсь.
С этим трудно не согласиться!
Если заказчик готов оплачивать такую работу, то почему нет?
Насчет "послать нахрен" имелось в виду мягко уговорить клиента, что это неразумно выгружать так много полей в Excel.
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876933
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvg Потому что эти файлы - результат нескольких лет работы специалистов, наваявших эти расчёты.
Не было у них других инструментов.
Они забивали данные руками, потом стали выгружать из каких то источников.
XML ещё не существовало, когда они это делали.
Когда я начинал работать в IЕ на одном промышленном комбинате, то там забивали данные в SuperCalc, выгружали их в DBF-формате на дискеты 5.25 и вручную (я был транспортным протоколом) неслись в другое управление и там загружались в другую систему учета.
Хотя 10 мегабитная сеть на коаксиальных кабелях работала.

Когда настроил пересылку и загрузку данных по сети, то общее их настроение было "А что? Так можно было что-ли?"

Это я к тому, что традиция традицией, но если есть возможность, то почему не улучшить систему?
P.S. Сорри за использование архаичных и забытых терминов.
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876934
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008работать в IЕ
работать в IT
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39876995
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vah,

наилучшим будет написать на VBA программу выгрузки.
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39877241
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL2008Насчет "послать нахрен" имелось в виду мягко уговорить клиента, что это неразумно выгружать так много полей в Excel.Не, ну это понятно, если выбор делается при специалисте, то его долг - сказать, как правильно.
Но обычно 6000 полей выгружают, потому что уже так работает...
SQL2008Это я к тому, что традиция традицией, но если есть возможность, то почему не улучшить систему?Согласен, но не всегда составные части бизнес-процессов функционируют в одном проекте, подразделении, иногда даже это разные компании. И поменять становится непросто.
Опять же, я говорил об "активах" - бизнес вполне обоснованно спросит: "сколько нам за это будет баксов, если мы поменяем систему расчётов на Эксельных файлах на более современную?"
И нужно суметь ответить на этот вопрос, назвать цифру, и обосновать. А если вы ответите "ну надо заменить потому что это безобразие", то такой ответ может не сработать.
Владислав Колосовнаилучшим будет написать на VBA программу выгрузки.Так у них сейчас так и делается, но это не устраивает, потому что медленно работает.
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39877255
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvg,

в таком случае я не понял - о каких циклах говорилось. Можно циклы гонять по строкам, а можно и по 100-200 столбцов за раз.
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39877274
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав Колосовalexeyvg,

в таком случае я не понял - о каких циклах говорилось. Можно циклы гонять по строкам, а можно и по 100-200 столбцов за раз.Ну, это я не знаю, про детали реализации.
Наверняка можно оптимизировать, всё можно оптимизировать :-)

Вообще, есть же готовый клиент, для выгрузки в эксель - SSIS.
Может, он будет быстро это делать.

Или, как вариант, рассмотреть прямое формирование файла эксель (помня, что этот файл - обычный xml, и есть готовые решения такого рода).
Это точно будет самым быстрым вариантом, но писать и поддерживать такое, конечно, сложно, и выгружать напрямую следует только при требованиях экстремальной производительности, типа, 1 файл на 1 Гб каждую минуту.
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39877711
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vahСкажите пожалуйста, как можно наилучшим образом выгрузить данные из динамического запроса,
который возвращает 6000 колонок?

Заранее благодарен.

Смотрите в сторону OpenXML
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39881329
andy st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vah,
Чисто технически в xlsx используя драйвер Microsoft.ACE.OLEDB.12.0 и возможность выборки в OPENROWSET записи листа из заданного диапазона можно обходить ограничение в 255 столбиков для доступа к частям листа Excel

для вывода первых шести столбиков
Код: sql
1.
select * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=YES;Database=d:\xls\TEST.xlsx', 'SELECT * FROM [Лист1$A1:F2]')



для вывода столбиков 9998 - 10001
Код: sql
1.
select * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=YES;Database=d:\xls\TEST.xlsx', 'SELECT * FROM [Лист1$NTN1:NTQ2]')



точно также работает update
другая проблема - реализация автоматизации доступа к частям файла в общем виде запросто можно будет номинировать на награду "извращение года"
...
Рейтинг: 0 / 0
Экспорт в Excel 6000 колонок
    #39881340
Alexander Us
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vahСкажите пожалуйста, как можно наилучшим образом выгрузить данные из динамического запроса,
который возвращает 6000 колонок?

Заранее благодарен.

стелайте с# или vb проект в visual studio,
приукутите библиотеку для записи и чтения Excel файлов EPPlus
(можно через NuGet)

-бесплатно
-много примеров
-много возможностей
-расширяемо (я делал с ней даже кастомизорованные пивоты)
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Экспорт в Excel 6000 колонок
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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