Задать вопрос
  • Выбрать только одну саму свежую строку для поля?

    erge
    @erge
    Примус починяю
    для MySQL 8.0 испльзовать row_number()

    для более ранних версий использовать подзапросы:

    -- For MySQL 8.0
    select FLOW, OTPERIOD, LOG_DATE, LOG_TIME, ENTITY
      from (
        select
          FLOW, OTPERIOD, LOG_DATE, LOG_TIME, ENTITY,
          row_number() over (partition by ENTITY order by LOG_DATE desc, LOG_TIME desc) num
        from test
      ) tt
      where num = 1
    ;
    
    
    -- For MySQL <=8.0
    select t.*
      from test t
      inner join (
        select max(LOG_DATE) LOG_DATE, MAX(LOG_TIME) LOG_TIME, ENTITY
          from test
          group by ENTITY
          having concat(LOG_DATE,' ', LOG_TIME) = max(concat(LOG_DATE,' ', LOG_TIME))
    ) tt on tt.ENTITY = t.ENTITY and tt.LOG_DATE = t.LOG_DATE and tt.LOG_TIME = t.LOG_TIME
    ;
    
    
    -- For MySQL <=8.0
    select *
      from test t
      where concat(LOG_DATE,' ', LOG_TIME) = (
        select max(concat(LOG_DATE,' ', LOG_TIME))
          from test tt
            where tt.ENTITY = t.ENTITY
          group by ENTITY
      )
    ;


    как-то так, см. пример на dbfiddle.uk

    PS: но по последним двум вариантам будет выдаваться несколько записей если в одну секунду по одному и тому же ENTITY пишется несколько записей, надо дальше "колхозить".
    Ответ написан
    3 комментария
  • Как можно найти центроид четырёх точек ( Quadrilateral ), зная координаты этих вершин?

    wataru
    @wataru Куратор тега Математика
    Разработчик на С++, экс-олимпиадник.
    Вот тут хорошо расписано.

    Сначала надо триангулировать четырехугольник. Потом, центр масс каждого треугольника - среднее арифметическое координат. Далее, остается найти центр масс двух точек - центров масс треугольников, где в каждой точке лежит масса равная площади треугольника.

    Чтобы это работало и с невыпуклыми многоугольниками надо считать площадь треугольников через векторное произведение сторон, разрешая таким образом отрицательные площади у треугольников снаружи вашей фигуры.

    Итоговая фромула (в векторах):
    C = ((p1+p2+p3)/3*(p1p2*p1p3)+(p3+p4+p1)/3*(p1p3*p1p4))/((p1p2*p1p3)+(p1p3*p1p4))


    Тут pi - i-ая вершина четырехугольника, pipj - вектор между точками i и j. pipj*pkpl - векторное произведение двух векторов.
    Ответ написан
    Комментировать
  • Как добавить bash в автозагрузку от имени root?

    @voleg4u
    http://www.voleg.info/
    Тебе заблокировать модуль ? Почитай про blacklist в modprobe.d .
    Ответ написан
    Комментировать
  • Как научиться правильно использовать классы?

    briahas
    @briahas
    ObjC, Swift, Python
    Ваш вопрос относится к архитектуре приложения, а не к "как правильно использовать классы".

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

    Мой ответ - пишите как хотите (это в себе подразумевает и "как нравится" и " как легче" и "как левая пятка захочет"). Вы только учитесь, и если вы не гений, то, полюбому, сначала напишите не правильно. Так что - тренируйтесь, и , как следствие, учитесь.
    Ответ написан
    9 комментариев
  • Написать софт под электронный замок?

    gbg
    @gbg Куратор тега Железо
    Любые ответы на любые вопросы
    Обычно электронный замок - это натурально замок, исполнительное устройстово, в котором отсутсвуют какие-либо мозги - дали ему 12 вольт - он присосался, (или перевел щеколду из запертого положения в открытое).

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

    Таким образом, ответ - и да и нет.

    Да, потому что контроллер можно запрограммировать (причем на разном уровне - заданием сценария, если это СКУД, заданием релейной логики, если это ПЛК, или натурально на C).

    И Нет, потому что фактически, программируется не замок, а контроллер, который является отдельным устройством.
    Ответ написан
    8 комментариев
  • Как сравнить 2 файла в linux?

    xotkot
    @xotkot
    ответы это убийцы вопросов
    показать только ту строку, которая отсутствует во втором файле

    comm -23 <(sort file1.txt) <(sort file2.txt)
    Ответ написан
    3 комментария
  • Почему не уменьшается размер раздела?

    Melkij
    @Melkij
    DBA для вашего PostgreSQL?
    Это бывает неожиданностью, но совершенно верно, размер файловой системы не обязан совпадать с размером раздела.
    resize2fs меняет размер только файловой системы. После этого необходимо изменить размер раздела. parted умеет команду resizepart. Про cfdisk не в курсе.

    При том, при уменьшении раздела будьте предельно аккуратны. Как и многое с правами root, система разрешит вам сделать размер раздела меньше чем файловая система. С фатальными последствиями для файловой системы.
    Неплохой идеей будет сначала подрезать размер файловой системы сильнее, чем предполагается (до 7,5гб, например), уменьшить раздел, затем выполнить вновь resize2fs без явного указания размера что увеличит размер ФС до размера раздела. Так будет гораздо ниже риск того, что где-то ошиблись (например, в единицах измерения килобайты либо кибибайты) и отрезали часть файловой системы
    Ответ написан
    2 комментария
  • Доброго времени суток, нужна помощь с подменой ip адреса в браузере?

    @pfg21
    ex-турист
    как вариант прокси сервер в офисе-1
    и настроить Proxy auto-config
    забивать гвозди vpnами ну такое...
    Ответ написан
    Комментировать
  • Данное поведение провайдера это норма?

    На самом деле icmp-ответ, в котором будет "серый" ip-адрес, может прилететь от любого промежуточного узла при трассировке, а не только от ближайшего роутера или из сети своего провайдера. Это связано с тем, что ip-адрес в icmp-ответе, который будет отображен в трассировке, и фактический адрес источника в ip-пакете, с которым он был отправлен с транзитного узла, - это разные сущности. Кроме того, фактический ip-адрес источника может на транзитном маршрутизаторе превратиться из "серого" в "реальный", чтобы иметь возможность быть гарантированно доставленным в интернете. Самый частый случай, приводящий к такому - какой-либо промежуточный маршрутизатор в сети провайдера может обрабатывать транзитный трафик с реальными ip-адресами, имея при лишь служебный серый ip-адрес. Протоколы маршрутизации вполне такое допускают. Так что это в принципе не проблема, хотя некоторых смущает.
    P.S. В моей практике была обратная ситуация. Безопасники докопались до ситуации, когда при трассировке внутри интрасети большой организации один из промежуточных узлов отображал реальный ip-адрес, пусть даже этой организации и принадлежащий. Они требовали объяснить, почему трафик ходит через интернет :)
    Ответ написан
    Комментировать
  • Есть ли какой-то сервис, умеющий делать усиленную ЭЦП на документ?

    udjin123
    @udjin123
    PHP, Golang, React
    Я думаю любое ЭДО так может, в рамках внутреннего документооборота, вот сейчас в своем аккаунте в Диадоке проверил, отправил документ сам себе (сделал подразделение и ему отправил), после этого можно скачать архив с документом его подписью. API у Диадока есть )
    Ответ написан
    2 комментария
  • Как разобраться с этим шифром?

    vesper-bot
    @vesper-bot
    Любитель файрволлов
    Итого:
    Шифр - 3DES/CBC режим padding = PKCS5, ключ="F9nA5uH8CeWreBraCRukaChe" IV="pUJeQ3Tr"

    >>> import pyDes
    >>> import base64
    >>> data = base64.b64decode("9MaGC081K1jLXeMyHUCwWg==")
    >>> f = "pUJeQ3Tr".encode('ascii')
    >>> b = "F9nA5uH8CeWreBraCRukaChe".encode('ascii')
    >>> k=pyDes.triple_des(b,pyDes.CBC,f,pad=None,padmode=pyDes.PAD_PKCS5)
    >>> print(k.decrypt(data))
    b'0862352228'

    Т.е. вроде работает.
    Проверка:
    >>> data2 = base64.b64decode("Lbc5OJkdOZyqri8OF89kBA==")
    >>> print(k.decrypt(data2))
    b'0874271626'
    Ответ написан
    1 комментарий
  • Где найти описание алгоритм Рабина Шаллета?

    Вот непосредственно ответ Шаллета на вопрос :)
    https://mathoverflow.net/questions/110239/is-there...
    Вот та самая статья: https://onlinelibrary.wiley.com/doi/10.1002/cpa.31...
    Ну и сразу бесплатный вариант :^) https://sci-hub.ru/10.1002/cpa.3160390713
    Ответ написан
    Комментировать
  • Запуск bat при подключении через RDP?

    pavelsha
    @pavelsha
    Кот Жрëдингера. Только добрый.
    Встроенный в винду Таск Шелдуер (Планировщик задач)

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

    И перпендикулярный вопрос:
    Зачем выполнять длительную обработку в сеансе пользователя. Регламентное задание 1С в вашем случае не подойдет?
    Ответ написан
    4 комментария
  • Как корректно управлять VLAN'ами на Mikrotik?

    vvpoloskin
    @vvpoloskin Куратор тега Компьютерные сети
    Инженер связи
    У меня есть абсолютное понимание того, как работают VLAN на коммутаторах Cisco, D-Link, и т.д.

    Ключевое слово здесь - на коммутаторах. На маршрутизаторах пусть даже циски или линуксе есть также различное количество вариантов создать влан. И также через бридж, и на физический интерфейс. Посмотрите, как добавлять вланы в Cisco 6500, тогда поймете логику. Если провести аналогию, то бридж - это L3-интерфейс на влане. А физ порт - L3-интерфейс на физическом интерфейсе, добавление влана к которому дает возможность разграничивать трафик на транке.
    Ответ написан
    5 комментариев
  • Как корректно управлять VLAN'ами на Mikrotik?

    @dronmaxman
    VoIP Administrator
    Такой вот он - Мироктик) Как швейцарский ноЖ!
    Если посмотреть на схему микросхем, то можно заметить что между процессором и портами есть отдельный чип который берет на себя роль свича. Так вот, если настраивать VLAN в разделе switch, то ты конфигуришь эту микросхему свича. Если настраивать в bridge, то работа с VLAN будет происходить в процессоре со всеми вытекающими.

    Если необходимо гонять трафик в VLAN между портами микротика, то правильнее это делать в switch, тогда транзитный трафик не будет загружать центральный процессор.

    Если микротик должен маршрутизировать трафик в этом VLAN, то твой путь bridge.
    Ответ написан
    3 комментария
  • Как сформулировать модель задержки передачи данных?

    Griboks
    @Griboks
    Существует целая область науки, посвящённая моделированию, а также теория систем.

    Что же касается модели задержки передачи данных, то нужно исходить их целей и условий вашей модели.
    Грубо говоря, вы можете допустить, что задержка всегда составляет 12 мс.
    С другой стороны, вы можете построить распределение задержек, аппроксимировать его каким-нибудь законом, например нормальным, а затем выделить параметры закона: среднее и разброс, 12±5.
    Также никто вам не мешает изучить физический смысл задержки и вывести соответствующую формулу.
    Ну и ещё много методов...
    Ответ написан
    5 комментариев
  • Как научиться чинить комплектующие ПК?

    Идите на rom.by, там есть Азбука ремонтника, и много чего ещё - да даже просто темы на форуме почитать.
    А также remont-aud.net, и ещё куча форумов.

    И так просто не получится - нет готового рецепта "научиться чинить всё". Начинать можно с блоков питания - это основа. Понимать что такое ШИМ, принцип работы, разные виды схемотехники, PFC APFC, и т.д. На этом этапе нужно уже научиться пользоваться основными приборами - мультиметр, осциллограф, esr-meter.
    Далее браться изучать что-то ещё, например, мониторы. Схемотехника, какие части за что отвечают, как взаимодействуют. На любых этапах обязательно знать английский на уровне чтения документации! починка техники на первых порах без чтения даташитов не даст прогресса в обучении. Попался монитор - смотрим его сервис-мануал (если найдём), находим участок неисправный (обычно там они рекомендуют - replace чего-то там - типа нашли неисправную плату, её меняем), менять платы - не наш путь! Смотрим на неё и выясняем маркировку элементов - микросхем, транзисторов, и т.д. По ней находим даташиты и изучаем как оно должно работать. Дальше работа головой и измерения.

    Дальше - браться например, за материнские платы ПК (ноутбуки - потом!)
    Там всё проще может быть - основное всё есть на rom.by. Но нужно больше инструментов - обязательна паяльная станция (фен, или ИК), программатор, тестеры сокетов. И смотреть! Порой внимательный осмотр - половина ремонта, часто можно найти сбитые компоненты, перебитые дорожки, вспученные конденсаторы, загнутые контакты в сокете...

    По ноутбукам - форум ноутбук1 ( ascnb1.ru/forma1/ ), и другие.

    Видеокарты - ИМХО, сейчас их не надо чинить начинающим. Ибо даже тупо транзисторы поменять не получится, паяльник на 100Вт не успевает прогревать плату, нужно ещё и нижний подогрев как минимум. И ещё китайцы на каждом шагу левак подсовывают перемаркированный - покупаешь транзистор на 80А, а он при 10 уже дым выпускает.

    И неплохо бы иметь человека, кто может подсказать и показать что-то.
    Я без этого обошёлся. Сейчас наоборот, свернул с пути ремонта, с оборудованием и остатками запчастей и деталей пока не знаю что делать... Продать не выйдет - всё уже заметно б/у, и много самодельных штуковин (нагрузка для БП, переходники всякие, тестеры простые, и т.д.)
    Вот как раз я ушёл работать системным администратором. И его вообще на должно волновать, что там где-то неисправные железки валяются - это проблема владельца оборудования и может быть эникейщика, которого напрягут "сделай с этим что-нибудь". Для мелких контор чаще всего сисадмин и будет за двоих-троих работать, и железо чинить, и сеть тянуть, и сервера настраивать. Это интересно, конечно, но надоест. Мне надоело вот.
    Ответ написан
    3 комментария
  • Как переместить все файлы в другую папку кроме папки с помощью терминала?

    Всё проще! Не надо создавать проблем где их нет.
    Указанной командой всё перенесётся как надо, mv только ругнётся:
    mv: невозможно перенести 'videos' в свой собственный подкаталог, 'videos/videos'

    Остальное будет перенесено в указанный каталог videos.
    Ну, в Вашем варианте, filters. Только что создал для пробы, проверил.

    Для теста сделайте отдельный каталог и в нём аналогично файлов-каталогов накидать можно. Ну и в нём же проверить. Мало ли, как у Вас в убунте настроено чего...
    Ответ написан
    Комментировать
  • Агрегация сетевых каналов?

    gbg
    @gbg Куратор тега Компьютерные сети
    Любые ответы на любые вопросы
    Все правильно. Два гигабита между двумя конкретными хостами можно получить только при политике Round-Robin, (когда пакеты по очереди попададают то в один, то в другой сетевой интерфейс).

    Венда и циско это не поддерживают - только линукс и микротик.

    В остальных случаях, вы будете иметь ускорение для доступа от разных хостов (потому что при политике разделения по макам, которая является дефолтной, пакеты в интерфейсы будут попадать в зависимости от MAC)
    Ответ написан
    1 комментарий