Задать вопрос
  • Как написать запрос, который будет считывать меньше данных?

    @Naiivi
    Запрос можно оптимизировать тремя способами:
    1) Использовать индексы по полям ArticleId и CrossArticleId в таблице Crosses;
    2) Использовать группировку по полю CrossArticleId во временной таблице @tempFlatCrosses, чтобы избежать дубликатов при соединении с таблицей Crosses;
    3) Использовать оператор EXISTS, вместо INNER JOIN, чтобы проверить наличие соответствующих записей в таблице Crosses, без возврата лишних данных.
    -- Создаем индексы по полям ArticleId и CrossArticleId в таблице Crosses
    CREATE INDEX idx_crosses_articleid ON Crosses (ArticleId);
    CREATE INDEX idx_crosses_crossarticleid ON Crosses (CrossArticleId);
    
    -- Достаем все строки, у которых ArticleId = 1 и группируем по CrossArticleId
    SELECT ArticleId, CrossArticleId
    INTO @tempFlatCrosses
    FROM Crosses
    WHERE ArticleId = 1
    GROUP BY CrossArticleId;
    
    -- Делаем выборку из таблицы Crosses, используя оператор EXISTS
    SELECT c.ArticleId
    FROM Crosses c
    WHERE EXISTS (
      SELECT 1
      FROM @tempFlatCrosses f
      WHERE c.CrossArticleId = f.CrossArticleId
    );
    Ответ написан
    1 комментарий
  • Как сделать изменение страниц по нажатию кнопки в Avalonia?

    @Naiivi
    Я отправил запрос на pull (пулл-запрос) по адресу https://github.com/Zakarayaev/avproj1/pull/1. На основе вашего решения, я внес изменения, которые вы хотели бы видеть. Я надеюсь, что вы сможете разобраться с изменениями самостоятельно.

    Также прилагаю свой репозиторий с переделанным проектом. Вы можете найти его по адресу https://github.com/namenavi/avproj1. Если не сложно, отметьте этот ответ как принятый.
    Ответ написан
    6 комментариев
  • Почему подвисает Git Extensions и git log при вывода истории файла из большого репозитория?

    @Naiivi
    К сожалению нет, но есть несколько способов, которые могут помочь вам ускорить или облегчить просмотр истории файла в git extensions. Они включают в себя:

    1) Установить опцию --max-count для git log, чтобы ограничить количество показываемых коммитов. Например, git log --max-count=10 "src/filename" покажет только последние 10 коммитов, в которых был изменен файл. Это может сократить время ожидания и нагрузку на процессор.
    2) Установить опцию --no-pager для git log, чтобы отключить использование программы less для показа вывода. Например, git log --no-pager "src/filename" покажет историю файла без задержки и возможности прокрутки. Это может быть полезно, если вы хотите просто посмотреть последние изменения файла.
    3) Использовать фильтр по дате для git log, чтобы показать только коммиты, сделанные в определенный период времени. Например,
    git log --since="2020-01-01" --until="2020-12-31" "src/filename"
    покажет только коммиты, сделанные в 2020 году. Это может быть полезно, если вы знаете примерное время, когда файл был изменен.
    Ответ написан
    Комментировать
  • Как оптимизировать вложенный запрос?

    @Naiivi
    Пробовал использовать ?
    SELECT column_name(s) 
    FROM table_name 
    WHERE column_name IN (value1, value2, ...);

    Для подзапроса
    LEFT JOIN (SELECT comment_task_id,sum(comment_time) AS sum_time,GROUP_CONCAT(comment_text) AS sum_text FROM `comment`  GROUP BY comment_task_id ) d ON d.comment_task_id = task_id
    Ответ написан