Задать вопрос
  • Почему при запросе название столбца становится в нижнем регистре(nicolaslopezj/searchable)?

    @Akina
    Identifiers and Key Words

    Хотите регистрочувствительности - обрамляйте двойными кавычками.
    protected $searchable = [
                'columns' => [
                    'products."clientArticle"' => 10,
                ],
            ];
  • Реализицая обратной польской нотации, как быть с унарным минусом?

    @Akina
    Пардон, спутал обратную польскую в названии темы с прямой (префиксной) в тексте вопроса, где собственно и смотрел.

    В обратной польской это будет 5 ± 2 + ±.

    А показанное ± ± 1 2 + в принципе не может быть обратной польской записью (у которой операнды располагаются перед оператором, т.е. она всегда начинается операндом и всегда завершается оператором).

    как быть с унарными операторами
    Унарный минус - это просто краткая запись "0 -"., считай, что там пропущенный ноль.
  • Реализицая обратной польской нотации, как быть с унарным минусом?

    @Akina
    Проблема с выражениями вида: -(-5 + 2) , в Польской это будет как ± ± 1 2 +.

    Да ну? А по-моему, ± + 2 ± 5. ЕМНИП в польской нотации оператор не может быть в конце в принципе. Единица же, внезапно заменившая пятёрку - надо понимать, обычная очепятка.
  • Как организовать переводы тегов связями таблиц?

    @Akina
    grabbee,
    на странице 25 постов с тегами. Вам нужно перевести только теги. В рамках компонента "пост" я могу запросить теги для каждого поста отдельно - это 25 запросов.

    А в рамках компонента "страница" что, нельзя сгрести в кучку все теги из всех 25 компонентов "пост", и одним запросом всё сразу получить? Или прямо в момент получения данных для страницы, ещё в запросе, который вернёт эти посты, сразу привязать таблицу переводов тегов?
  • Как организовать переводы тегов связями таблиц?

    @Akina
    ??? При переключении языка делается ОДИН запрос, который выгребает все (или только нужные, но все нужные) записи именно для требуемого языка (или дефолтного, если какой-то термин не имеет значения для требуемого языка).
  • Как прятать связанные ресурсы при блокировке пользователя?

    @Akina
    это привело к увеличению нагрузки на БД более чем в два раза.

    Небось, за счёт того, что теперь в каждый запрос добавилось
    SELECT ...
    FROM ...
    JOIN users ON ...
    WHERE ...
      AND NOT users.blocked
    ...


    Тогда:

    1. В каждую таблицу добавляется поле blocked. Потому что связанная сущность, как я понимаю, может блокироваться и для неблокированного пользователя (скажем, нормальный пользователь по скудоумию зарепостил что-то нелегитимное, или просто под настроение крепко высказался - достаточно блокировать только сам предосудительный пост/коммент). При этом фильтрация выполняется без привязывания таблицы пользователей.
    2. На таблицу users повесить AFTER UPDATE триггер, который при изменении (либо только при установке в TRUE) поля blocked будет изменять соотв. поле у связанных записей. Впрочем, согласен с twobomb - то, что юзер заблокирован, не делает все его ранние посты предосудительными и требующими блокирования.
  • Как выбрать последнюю запись с внешним ключом, по которому фильтруем?

    @Akina
    мне нужно выбрать все последние записи с определённым (ВНИМАНИЕ) последним статусом.

    Надо ли это понимать так: получить самый последний статус, затем вернуть все записи с таким статусом?

    Покажите требуемый результат запроса для приведённых данных, ну и поясните, почему именно так.

    Прилагаю схему

    Column count doesn't match value count at row 1
  • Как организовать переводы тегов связями таблиц?

    @Akina
    grabbee, WHERE titleID = 1выберет все имеющиеся языковые варианты для этого title ID. Только какой смысл выбирать ВСЕ языки, когда реально нужен только один?
  • Как организовать переводы тегов связями таблиц?

    @Akina
    Преобразуйте таблицу в (titleID-languageID-titleText).
  • Как посчитать среднее значение ячеек с одинаковым местом работы?

    @Akina
    Where jobs.job_title Like '%Manager'
    проверяет не "содержать слово Manager", а "заканчиваться словом Manager". Это немножко другое. Нужно либо Where jobs.job_title Like '%Manager%'
    либо (предпочтительнее, кстати)
    Where LOCATE('Manager', jobs.job_title)
  • Как получить по лимиту данные из одной таблицы по разным критериям?

    @Akina
    ragnar_ok, ну... LIMIT без ORDER BY в исходном запросе всё равно возвращает "какие-то" записи, а не какие-то определённые. Как правило это будут вполне определённые записи - первые в соответствии с использованным индексом, если используется, либо первичным. Но именно "как правило" - в любой момент могут вернуться "не те", причём даже в двух последовательно запусках того же запроса. И, если предполагать, что "порядок всегда один и тот же" - можно и лицо ладошкой поранить... оно надо?

    А так явно видно, что вернутся именно случайные. Если не нравится - измените выражение сортировки и получайте строго первые 5 записей при именно заданной сортировке. Но в любом случае делайте запрос либо детерминированным, либо недетерминированным в явной форме.
  • Как выполнить backup базы данных mysql запросом?

    @Akina
    system - это команда клиента. а не запрос.
  • Как максимально быстро взять последний элемент таблицы?

    @Akina
    Ну попробуйте в конце концов выпендриться и сделать
    SELECT UF_DATE 
    FROM trade_history 
    WHERE ID = ( SELECT MAX(ID)
                 FROM trade_history );
  • Как выполнить команду по крону для нескольких записей?

    @Akina
    Какой великий смысл привлекать CRON и PHP? У MySQL есть свой встроенный Event Scheduler, который выполнит всё то же, но совершенно при этом не завися от внешних инструментов, и, само собой, быстрее (а заодно ещё и трафик сэкономит).

    Не говорю уж о том, что два запроса тут в принципе не нужны, всё сразу (и проверка. и обновление) прекрасно делается в одном запросе.
  • Как обнулить IP адрес?

    @Akina
    shurshur, BOOTP в этом смысле ничем не отличается от DHCP. ipv4ll/ipv6ll, если он следует RFC - наоборот, аналогичен статическому адресу (хотя при самой первой генерации, пока никакой адрес система не имеет, ибо ранее не генерила - его можно считать динамическим), по-моему, в RFC вообще не описан случай, когда ранее сгенерированный адрес при очередной загрузке оказывается уже кем-то занят. За openvpn pull пока не скажу, ибо не сталкивался, соответственно не смотрел, что за зверь.

    пользователь на форуме может написать и "у меня процессор не включается", разве из этого надо делать сногсшибательные выводы?
    Нет, но надо вытрясти из него, что именно он имеет в виду - это просто необходимо для осмысленного ответа. Заодно неплохо потом ему сказать, как это обзывается на самом деле.
  • Какое максимальное количество клиентов могут быть на одном IP-адресе?

    @Akina
    АртемЪ,
    Исходящий трафик уходит без проблем, проблема только в том чтобы различать какому именно абоненту из внутренней сети предназначен входящий трафик. И для этого используются номер порта.


    Это в большинстве (или всех?) текущих реализаций NAT. Но формально-то ничто не мешает для этого использовать группу (адрес назначения - порт назначения - номер порта, использованного для отправки)? Само собой в ответах адрес/порт назначения станет в адресом/портом источника пакета - и этих данных достаточно для идентификации абонента назначения во внутренней сети даже при использовании одного и того же порта для маршрутизации наружу трафика нескольких абонентов.

    И записывает в таблицу - что трафик пришедший на порт xxxx нужно отсылать в локальную сеть абоненту с адресом локальным адресом y.y.y.y.

    Что мешает использовать правило "трафик пришедший на порт xxxx с адреса z.z.z.z нужно отсылать в локальную сеть абоненту с локальным адресом y.y.y.y"?
  • Как исправить сортировку в MySql?

    @Akina
    FanatPHP,
    это mysql, какие индексы по выражению?
    Вы версию-то обновите... https://dev.mysql.com/doc/refman/8.0/en/create-ind...

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

    зачем это D вообще таскать с собой в базе?
    Это к автору вопрос. Я бы - не таскал.

    Ord EO,
    что делает column_name FROM 2 и почему именно 2ка?

    Посмотрите описание функции https://dev.mysql.com/doc/refman/8.0/en/string-fun... - там вроде бы всё подробно рассказано.
  • Как записать дату в таблицу MySql и в чём может быть проблема?

    @Akina
    Дата-время вставляются как строковые литералы. А, следовательно, они должны обрамляться одиночными кавычками.

    Без них 2013-11-29 воспринимается как арифметическое выражение (легитимное, ибо формально число может быть преобразовано в дату), а вот последующее 21:06:3 - как ошибочно вставленная непонятная фигня.
  • Как обнулить IP адрес?

    @Akina
    shurshur,
    его так все называют

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

    Впрочем, дело Ваше, оставайтесь при этом мнении.