Страницы: 1
RSS
Обновляемая база данных
 
Здравствуйте! Прошу совет у знающих людей, как правильно организавать базу данных. Проблема следующая: есть очень много реестров, баз данных по разным юрлицам и проектам в них, все это ведется в excel и ежедневно заполняется данными.  По итогу с помощью power query стягивается в различные своды и отчеты путем подключения к этим файлам. Я самоучка, методом проб и ошибок пришла к тому, что есть сейчас, все стабильно работает, но получается много взаимосвязей и запросов, обновление происходит очень долго. Я понимаю, что организовывать процесс надо по другому: в моем понимании это создание единой базы данных, которая стягивает в себя информацию со всех источников, а для создания отчета, я подключаюсь к ней через power query, беру то, что нужно и уже  формирую отчет. Т.е нужен один промежуточный обновляемый "файл".Возможно ли это? Какими способами можно это осуществить? Sql изучить? Дайте пожалуйста направление, в какую сторону смотреть! Спасибо!  
 
Добрый день Viktoriya3675, Думаю для начала Вам нужно ответить на несколько вопросов:
1. Долго это сколько?
2. Где находятся файлы?
3. Как они организованы (лучше показать файл пример)?
4. Показать сам файл с кодом PQ (файл пример)

И когда придут большие знатоки Power Query, им будет гораздо проще Вам помочь.
Цитата
Viktoriya3675 написал:
Sql изучить?
Это никогда не помешает и расширит ваши возможности
Изменено: Msi2102 - 11.12.2025 12:23:29
 
Цитата
Viktoriya3675 написал:
Дайте пожалуйста направление, в какую сторону смотреть!
в сторону СУБД :) И бояться не надо. Начните с самого простого - MS Access. Power Query будет выступать как инструмент ETL (основная обязанность PQ). Если не заморачиваться, то и знаний SQL не потребуется - в Access все на достаточно примитивном уровне, таблицы можно руками править. Интеграция с PQ и Excel отличная.
Пришелец-прораб.
 
Добрый день! Все файлы находятся на одном сервере, у всех определена четкая форма и структура, есть справочники.
Понимаете, определенного файла нет, они абсолютно разные по смыслу : реестры платежей, бюджеты, лимиты, плановые данные, фактические данные, данные по складу , по ценам и т.д. Т.е для разных целей ведутся. Но есть определенные общие ключи, по которым я собираю и соединяю эти данные  для разных задач, отчетов тоже много.  Проблема в том, что когда создаю какой нибудь свод ,  приходится подключаться к 10-30 файлам, объединять их, делать расчеты и т.д. Я уже в них путаться начинаю.
Вопрос в том, возможно ли объединить все что есть в одну базу, с обновлением, или может быть есть другой выход.
 
AlienSx, в сторону MS Access даже не смотрела, не знаю на что он способен, спасибо за наводку, обязательно изучу. Если он вам знаком, подскажите, после подключения к нужным файлам, он потом как обновляет данные, в ручном режиме, или нужно открыть, обновить и сохранить? Или там другой процесс?)
 
Цитата
Viktoriya3675 написал:
после подключения к нужным файлам, он потом как обновляет данные
Там другая схема - данные изначально вносятся в единую базу Access, но в разные таблицы. И внутри Access можно настроить сведение этих таблиц по ключам в единый реестр, к которому можно будет уже подключаться из Excel даже без PowerQuery(но лучше с ней).
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Viktoriya3675, Добрый день, посмотрите все таки в сторону SQL однозначно или (ГуглТаблицы + автоматическая выгрузка в SQL)
 
Дмитрий(The_Prist) Щербаков,  поняла теперь) жаль, так не подойдет мне
 
Frolov_Andrey,  спасибо за совет! Жду января, начало обучающих курсов по SQL, надеюсь помогут)  надеялась что есть попроще варианты решения проблемы
 
Цитата
написал:
есть попроще варианты решения проблемы
Курсы тут не нужны, у меня это реализовано так:
1. Гугл Таблицы, куда заносят данные
2. Коннектор автоматически подключается к Гугл таблицам и забирает данные (раз в день)
3. Делается запись в SQL Базу данных, при чем очень просто и быстро, знание SQL тут и не нужно, если есть доступ к ИИ
Код
DECLARE @json NVARCHAR(MAX) = '{{$json["jsonData"]}}';

TRUNCATE TABLE [Criteria];

INSERT INTO Criteria (
    Date, CampaignId, AdGroupId, CriterionId, Criterion, Impressions, Clicks, Ctr, Cost
)
SELECT
    Date, CampaignId, AdGroupId, CriterionId, Criterion, Impressions, Clicks, Ctr, Cost
FROM OPENJSON(@json)
WITH (
    Date Date,
    CampaignId varchar(32),
    AdGroupId varchar(32),
    CriterionId varchar(32),
    Criterion nvarchar(1024),
    Impressions Int,
    Clicks int,
   Ctr decimal(18,2),
   Cost decimal(18,2)
);
 
Viktoriya3675, одного sql будет мало, нужно изучить еще какую-нибудь среду разработки (мне нравится C#). Это нужно чтобы создавать удобные формы для ввода/редактирования данных в базу данных и формирования отчетов из базы.  
 
Aлeкceй, думаю Виктория не планирует делать формы. Я так понял, что основная цель - ускорить загрузку данных из нескольких файлов Excel, в которые данные заносятся другими людьми. Контроль ввода не планируется.
Хотя изучение озвученных возможностей будет большим плюсом и может быть впоследствии появится удобный инструмент ведения базы.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
Aлeкceй написал:
одного sql будет мало, нужно изучить еще какую-нибудь среду разработки (мне нравится C#).
Цитата
За кружок по рисованью
Тоже все голосовали.
Пришелец-прораб.
 
Дмитрий(The_Prist) Щербаков,  Да, все верно. А цель не только ускорить загрузку данных, но и подключаться к одной   обновленной базе данных и брать оттуда то, что нужно
 
Frolov_Andrey, курсы мне нужны для того, чтобы понимать как это все работает на практике и где можно применить)  похоже, что sql это как раз то, что мне необходимо
 
Viktoriya3675, Конечно необходимо знать SQL и уметь строить БД
 
Тема больше для Курилки
Согласие есть продукт при полном непротивлении сторон
 
Цитата
Viktoriya3675 написал:
Все файлы находятся на одном сервере, у всех определена четкая форма и структура, есть справочники
Power Query вы используете, а Power Pivot и Dax используете?

Я так понимаю: подключаетесь через PQ к данным, выгружаете на листы Excel и далее формулами строите сводные таблицы и т.д.

Возможно достаточно выгружать в Power Pivot факты со справочниками, настроить связи и в Excel строить dax-сводные.
Или, для упрощения, в PQ собрать в одну-две таблицы без справочников и т.д.

Какое максимальное количество строк в файлах? Есть файл данных с 500+тысяч строк?
Страницы: 1
Читают тему
Наверх