Задать вопрос
  • Как прозвонить механическую клавиатуру?

    @alexalexes
    Не включайте больше, пока не будет доступа к внутренности корпуса.
    Когда разберете - увидите наглядно, что окислилось, что вышло из строя, где остались лужи и подтеки.
    Ветошь без ворса, изопропиловый спирт, старая зубная щетка и паяльник вам в помощь после разборки.
    PS: Если клава имеет автономное питание, то я бы не медлил с разборкой.
    Ответ написан
    Комментировать
  • Какой установщик MySQL использовать?

    @alexalexes
    В качестве хобби, полезно:
    1) знать, как выживать в 5.6 MySQL, если нужны оконные функции, если будете потом возиться с поддержкой уже существующих сайтов;
    2) научиться работать в любой 8+ версии.
    3) посмотреть форк MariaDB - обратить внимание на синтаксис insert, update, delete - там затруднительно использовать псевдонимы таблиц.
    Ответ написан
    4 комментария
  • Почему вложеность запроса так сильно меняет скорость?

    @alexalexes
    1. Отсутствие индексов на всех выводимых, группируемых, участвующих в условиях выборки полях.
    2. t_report_detail не таблица, а вью. Не каждая вью адекватно приготовлена, чтобы над ней можно было легко делать еще какую-либо агрегацию. Пишите другую вью на основе ее текста запроса или изменяйте принцип получения агрегированных данных, чтобы не было узских мест.
    PS: explain analyze - это ваши очки. Администратор СУБД слеп без него.
    PPS: Если работаете в Toad, то простой запуск запроса в редакторе не всегда адекватен при измерении времени. Так как он получает только первые 500 записей. Поэтому, если запрос усложнить, то план выполнения может резко поменяться с учетом получения 500 записей на конечном этапе.
    Ответ написан
    Комментировать
  • Как подсчитать количество строк в sql запросе?

    @alexalexes
    10.3.36-MariaDB
    объясняю раскладывая все по буквам.
    есть товар, который имеет несколько атрибутов, для примера возьмем 5 шт., они лежат все в одной таблице и имеют разные attribute_id, в запрос приходят 3 параметра, к примеру 200, 80, 15, пример записи в таблице
    spoiler
    product_id attribute_id text
    1 10 200
    2 10 230
    3 10 200
    1 12 80
    2 12 80
    3 12 80
    1 15 15
    2 15 13
    3 15 15
    1 80 Сони
    2 80 Сони
    3 80 Сони
    1 90 66
    2 90 60
    3 90 71

    по запросу нужно получить значение атрибута с attribute_id = 80 и с теми значениями которые еще пришли
    то есть результат должен быть Сони и total = 2 так как всем условиям соответствует 2 товара, то есть товары с product_id 1 и 3

    Вообще, в вашей задаче первым делом нужно правильно избавиться от distinct, чтобы правильно трактовать выбранные записи.
    Как это сделать?
    Считаем, что товарные item-ы имеют атрибут с id = 80 - по ним проходимся как по товарным записям. Все остальные id атрибутов используем как свойства записей - 10 - ширина, 12 - высота, 15 - диагональ.
    Тогда запрос будет таким:
    -- Тестовая выборка
    with product_attribute as (select 1 product_id, 10 attribute_id, '200' text from dual union all
    select 2, 10, '230' from dual union all
    select 3, 10, '200' from dual union all
    select 1, 12, '80' from dual union all
    select 2, 12, '80' from dual union all
    select 3, 12, '80' from dual union all
    select 1, 15, '15' from dual union all
    select 2, 15, '13' from dual union all
    select 3, 15, '15' from dual union all
    select 1, 80, 'Сони' from dual union all
    select 2, 80, 'Сони' from dual union all
    select 3, 80, 'Сони' from dual union all
    select 1, 90, '66' from dual union all
    select 2, 90, '60' from dual union all
    select 3, 90, '71' from dual),
    product as (select 1 product_id from dual union all
    select 2 from dual union all
    select 3 from dual
    )
    
    -- Сам запрос поиска
    Select A.*,
           count(*) over () cnt -- количество товаров в результате поиска
    from (SELECT p.product_id,
                 -- далее, его свойства
                 (select pp.text from product_attribute pp where p.product_id = pp.product_id and pp.attribute_id = 80) product_name, -- наименование item-а
                 (select pp.text from product_attribute pp where p.product_id = pp.product_id and pp.attribute_id = 10) wdt,
                 (select pp.text from product_attribute pp where p.product_id = pp.product_id and pp.attribute_id = 12) hgt,
                 (select pp.text from product_attribute pp where p.product_id = pp.product_id and pp.attribute_id = 15) dia
            FROM product p
          ) A
    where 1 = 1
      -- тут пишем поисковой довесок условий
      and A.wdt = 200
      and A.hgt = 80
      and A.dia = 15

    Результат будет:
    product_id product_name wdt hgt dia cnt
    1	Сони	200	80	15 	2
    3	Сони	200	80	15	2

    2 строки, считайте их как угодно, например, через count(*) over ().
    Ответ написан
    4 комментария
  • Возможно ли, защитить файлы на флешке от копирования, но с возможностью чтения и перезаписи?

    @alexalexes
    Тут бы хорошо, если станок имеет Ethernet порт и в его мозгах можно было бы поставить и включить ftp/samba клиент. Собственно, файлы хранить на сетевом диске, недоступный для операторов ЧПУ.
    Но, если операторы занимаются подгонкой файлов проекта в редакторе на компе, то вы никак не избежите утечек, если не ограничите доступ к портам компа и не отключите его от Интернета.
    Ответ написан
    Комментировать
  • Актуальны ли диски Blu Ray сейчас?

    @alexalexes
    Какой из внешних дисководов лучший?
    При условии, что у вас всегда будет под рукой рабочий привод.
    А так, надежней просто по компам родственников раскидать фотки, чтобы всегда существовало 2 и более копии в разных местах.
    Если не доверяете никому. То пишите несколько HDD копий и на полочку диски в разные помещения/квартиры.
    Ответ написан
  • Как перетащить отзывы с другого сайта на сайт на WP?

    @alexalexes
    1. Сделать скрипт, который будет эспортировать отзывы с API/парсинга других сайтов в базу данных WP. Запускать скрипт по cron раз в n минут.
    2. Если сторонняя площадка предоставляет виджет для отзывов, то использовать его, насколько можно его гибко настраивать.
    Ответ написан
    Комментировать
  • Как исправить проблему в домашней сети?

    @alexalexes
    Подключите кабель от провайдера напрямую к компу (проще всего взять ноут), сделайте все необходимые замеры, и обращайтесь к провайдеру.
    Ответ написан
    Комментировать
  • Как в выборке sql обратиться к предыдущей записи?

    @alexalexes
    Устройство | Серийный | Дата получения | Местоположение
    Ноутбук | 12349647 | 21.03.25 | Склад
    Ноутбук | 12349647 | 15.01.25 | Сотрудник_1
    Ноутбук | 12349647 | 30.08.24 | Склад
    Ноутбук | 12349647 | 22.05.24 | Сотрудник_2

    Такой способ записи с опорой на дату для построения исторической цепочки архитектурно не устройчив.
    Чтобы историческая цепочка стала устойчивой, нужно вводить указатель на следующую или предыдущую запись.
    ID | Устройство | Серийный | Дата получения | Местоположение | Следующий ID
    11 | Ноутбук | 12349647 | 21.03.25 | Склад | null
    8 | Ноутбук | 12349647 | 15.01.25 | Сотрудник_1 | 11
    5 | Ноутбук | 12349647 | 30.08.24 | Склад | 8
    1 | Ноутбук | 12349647 | 22.05.24 | Сотрудник_2 | 5

    При всех CRUD операциях работы с историческим списком нужно корректно записывать next_id в предыдущей записи.
    Можно произвольно перезаписывать все не служебные поля (кроме id и next_id), вплоть до серийника, и это не разрушит историческую цепочку.
    Последняя запись в исторической цепочке всегда будет next_id is null.
    Чтобы действительно корректно получать историческую цепочку, нужен рекурсивный запрос, но в простейших случаях достаточно сортировать цепочку по next_id.
    Ответ написан
    2 комментария
  • Как добавить в HTML страницу воспроизведение музыки?

    @alexalexes
    Это заблокировано на уровне политик браузера - аудио не должно включаться, если пользователь явно не нажал воспроизведение.
    Ответ написан
    1 комментарий
  • Почему роутер не выдает скорость?

    @alexalexes
    Воткните в комп напрямую кабель провайдера, настройте подключение, понаблюдайте сутки за скоростью на порту сетевой карты.
    PS: Возможно, кабель обжат не по парам. Если приборчиком проверяли этот момент мастера, то это не оно.
    Ответ написан
    2 комментария
  • Почему не включается отдельная видеокарта на ам4 материнке с Athlon 200g?

    @alexalexes
    Посмотрите настройки CSM Configuration, как там видео определено для ROM.
    68824157f3cac551531967.jpeg
    Ответ написан
  • Некачественный процессор Ryzen 5 5500?

    @alexalexes
    Нужно проверить процессор на рабочей сборке.
    Сходите в ремонтную мастерсткую с процем, вам его в тестовый стенд воткнут за небольшую оплату.
    Если он также ведет, значит это брак процессора - под крышку термопасты для охлаждения чипа не доложили.
    Ответ написан
    Комментировать
  • Как проверить множество mp3-файлов на целостность?

    @alexalexes
    Вы можете воспользоваться утилитой ffmpeg. Ее необходимо скачать и установить.
    Базовая команда в командной строке, чтобы проверить один файл input.mp3 выглядит так:
    ffmpeg -v error -f null - -i input.mp3 -f null - -
    Если все файлы положить в один каталог input (чтобы лежали без вложенности), а рядом создать такой скрипт в виде bat-файла, то можно проверить файлы пакетно:
    @echo off
    setlocal enabledelayedexpansion
    
    REM Указываем каталог с MP3 файлами
    set "INPUT_DIR=input"
    
    REM Проверяем, существует ли каталог
    if not exist "%INPUT_DIR%" (
        echo Каталог "%INPUT_DIR%" не найден.
        goto :eof
    )
    
    REM Объявляем переменную для подсчёта файлов
    set "total=0"
    set "passed=0"
    set "failed=0"
    
    for %%F in ("%INPUT_DIR%\*.mp3") do (
        set /a total+=1
        echo Проверка файла: %%~nxF
    
        REM Создаём временный файл для проверки
        set "tempfile=%%~dpnxf_temp.mp3"
    
        REM Пытаемся перекодировать файл в временный файл
        ffmpeg -v error -i "%%F" -f mp3 -y "%tempfile%" >nul 2>&1
    
        if errorlevel 1 (
            echo Ошибка при проверке файла: %%~nxF
            set /a failed+=1
        ) else (
            echo Файл %%~nxF прошёл проверку.
            set /a passed+=1
            del "%tempfile%"
        )
    )
    
    echo.
    echo Итог:
    echo Всего файлов: %total%
    echo Пройдено успешно: %passed%
    echo С ошибками: %failed%
    Ответ написан
    Комментировать
  • Напряжение на разомкнутом выключателе при отсутствии потребителей?

    @alexalexes
    Берете длинный удлинитель, чтобы хватило длины от розетки проектора до щитка, куда линия подключается.
    Выключаете автомат этой линии.
    Берете отвертку-пробник - убеждаетесь, что выключили фазу на этой линии - что всё безопасно.
    Вставляете удлинитель в розетку проектора.
    Ставите мультиметр на режим прозвонки.
    С помощью удлинителя вы теперь можете прозвонить любой участок цепи.
    Убедиться что целы участки:
    - от автомата щитка до розетки;
    - от розетки до выключателя.
    - включив выключатель можете подойти к щитку и проверить линию от выключателя до автомата.
    Так найдете в каком месте накосячили.
    PS: Если нет такого удлинителя, то подойдет любой длинный провод, в котором не жалко ободрать концы и также использовать для прозвонки.
    Ответ написан
    Комментировать
  • Как включить разъем usb 3 на моноблоке KVADRA 20?

    @alexalexes
    Отключите автоматическое обновление системы.
    Потом зайдите на https://support.kvadra.tech/business/download-center и найдите драйвер для USB контроллера или на чипсет целиком и установите его (возможно, придется снести предыдущую установку того же самого драйвера).
    Ответ написан
    Комментировать
  • Как собрать ядро DD-WRT для DIR-320 с поддержкой модемов, USB и USB/IP?

    @alexalexes
    Общий алгоритм такой:
    1. Поставить прошивку OpenWRT, которая соответствует параметрам железа.
    2. Установить дополнительные пакеты для расширения функций OpenWRT.
    3. Настроить соединения через графический интерфейс. Если это невозможно сделать до конца, то настраивать через SSH.
    Для dir-320 инфа тут.
    Есть пример, как ставить пакеты под конкретный 3G модем.
    Ответ написан
    1 комментарий
  • Только на мобильной версии сайта не работает отправка формы на почту?

    @alexalexes
    Подключите телефон к компу в режиме отладки (нужен будет ADB драйвер), а браузер - в режиме синхронизации.
    Вот так и отлаживайте.
    Смотрите, что там в JS происходит по части работы формы, и какие ajax шлет браузер телефона.
    PS: Можете попробовать на браузере компа включить отображение мобильной версии в панели разработчика, но это влияет только на юзер-агент и CSS, у JS появляется доступ к тач событиям. Но этого может быть недостаточно для воспроизведения багов.
    Ответ написан
    Комментировать
  • Как выявить б/у HDD?

    @alexalexes
    Сдайте диск обратно в магазин по гарантии. Не обязательно вам попадется б/у. Бывает заводской брак - это нормально.
    PS: Этот диск не позиционируется как "тихий", поэтому он не обязан быть тише кулеров в серверном исполнении.
    Щелчки, могут насторожить, но это может означать, что неправильно работает режим энергосбережения/плохое питание, либо наступает явная деградация.
    Ответ написан
    2 комментария
  • Как на 1000 видео наложить ватермарку плавающую?

    @alexalexes
    Использовать программы для пакетной обработки {вставьте тип файла}.
    Например, VidBatch.
    PS: В описании к проге есть скриншот, как раз ваш случай использования - наложение водяного знака.
    Ответ написан
    Комментировать