• По каким столбцам фильтровать данные, которые уже были загружены и грузить только новые данные?

    @Akina
    Ответ зависит от того, какая именно СУБД, и даже какая точно версия.
    Кстати, и решение исходной задачи - тоже зависит от этих данных.
  • Данные следующей строки?

    @Akina
    Задача, вывести рядом значения следующего дня.

    Любые, или тоже соответствующие условию WHERE?
  • По каким столбцам фильтровать данные, которые уже были загружены и грузить только новые данные?

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

    Вот не судьба. Телепаты - в отпуске. Хрустальный шар - в ремонте. По предсказаниям - двойка.

    Или объясняй, подробно и внятно, всё с этими данными связанное, ну и что куда должно выгружаться и загружаться, и вообще о чём речь... или получишь одни предположения и догадки, и будешь думать, куда их прислонить.
  • Как из ячейки с гиперссылкой получить имя книги для формулы?

    @Akina
    Формула ссылается на тот же лист, на котором находится нужная ячейка, или она на другом листе? Гиперссылка - на открытую книгу или на книгу на диске?
  • Как в БД ко всем значениям в одной колонке применить trim?

    @Akina
    Beliyadm, в MySQL есть TRIM(). Которая и обладает гораздо более широкими возможностями, и более удобна, и вообще одна всё сделает.
  • Как в БД ко всем значениям в одной колонке применить trim?

    @Akina
    1. Что значит - как? запросом UPDATE.
    2. Да, можно. Триггерами BEFORE INSERT и BEFORE UPDATE.
  • Node + pg. Как вставить множество строк в таблицу?

    @Akina
    А зачем Вам RETURNING? Убедиться, что масло таки масляное, а сервер в остальные поля записал именно значения по умолчанию, а не какую-нибудь придуманную на лету хрень?
  • Где лучше генерировать uuid для базы? В коде или в sql запросом?

    @Akina
    Нет, не обычная, это может привести к нарушению целостности данных, что повлечет за собой ряд других ошибок

    Это произойдёт в случае, когда целостность данных проверяется клиентским кодом. Ограничения же в структуре данных в принципе не позволят сохранить данные, нарушающие эти условия-ограничения.

    как Вы собираетесь связывать новые сущности с только что добавленной записью без дополнительного SQL запроса, который позволит получить ID записи?

    ??? Вы о существовании INSERT .. SELECT знаете? или всю жизнь пользовались только INSERT .. VALUES?

    реализация хранения данных не должна быть тесно связана с бизнес-логикой приложения.

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

    Сегодня Вы используете MySQL, завтра захотите PostgreSQL, потом Microsoft SQL Server и все эти автоматически генерируемые идентификаторы, триггеры, хранимые функции и другая логика принесут немало хлопот, поэтому учитесь проектировать приложение правильно. Нельзя, чтобы база данных управляла приложением.

    Вы сегодня пишете код на питоне, завтра захотите перейти на шарп, потом на джаву... в чём разница с утверждением про изменение SQL-сервера? ни в чём. У Вас выбранный язык (или даже фреймворк в рамках того же языка) управляет приложением - но это Вас как-то не беспокоит... Нельзя, чтобы выбранное средство создания приложения управляло приложением - Ваш тезис, просто применённый к тому, о применении к чему Вы даже помыслить боитесь. Так что не надо про "правильное проектирование приложения".
  • Где лучше генерировать uuid для базы? В коде или в sql запросом?

    @Akina
    entermix,
    может произойти ошибка, например, в связи с недостаточной проверкой данных

    Ну произошла ошибка... и что? Уйдёт багрепорт, код допишется и будет нормально проверять входные данные. До следующего багрепорта. Обычная ситуация.

    Если первичный ключ не нужен на стороне клиента (backend), то как связать новые сущности с только что созданной записью в базе данных?

    ??? Связывание на основании первичного ключа как существующий объект - фикция.

    Есть установление значения в зависимой записи поля, определяющего связь, в значение, взятое из зависящей записи - собственно то, что мы считаем процессом связывания. Есть контроль, что для зависимой записи запись зависящая существует - это то, что мы считаем процессом контроля. То есть и то, и другое - процессы.
    Причём процессы, которые являются обязательной составляющей процесса изменения набора данных. То есть и то, и другое - процессы внутри SQL-сервера. И сервер этим занимается.
    В общем, не клиентское это дело (да и не умеет он...). А то, что он не умеет - о том ему и знать не нужно.

    А именно связывание на основании, как сущность, а не процесс - это всего лишь абстракция в нашем мозге.

    PS. Всё обсуждение - имхо последствие попытки низвести SQL-сервер до роли тупого хранилища данных. И выполнять абсолютно всю обработку на клиенте. Тебе дали - храни. С тебя спросят - отдашь.

    Да, выполнять обработку клиент будет скорее всего плохо и криво... но это совсем другая сказка.
  • Где лучше генерировать uuid для базы? В коде или в sql запросом?

    @Akina
    entermix, вот очень интересно, с чего был сделан столь вопиюще странный вывод, что запись не будет сохранена в БД? когда всё с точностью до наоборот - UUID генерируется и сохраняется в БД, но не попадает на клиентскую сторону, ибо там он нахрен не нужен.
  • Range и Rows в оконных функциях же работают оба с диапазонами строк?

    @Akina
    Я дал fiddle. Где всё прекрасно видно. Если тебе графически проще понимать - нарисуй данные из fiddle.

    Нашел такое пояснение для range. Оно верное?

    На этот вопрос тебе никто не ответит. Текста запроса нет...
  • Как получить записи по диапазону дат, если есть только начало и конец?

    @Akina
    Для этого мне нужно хранить все свободные даты.

    ?? зачем? Правило - дано. Запрограммировать - элементарно.
  • Как получить записи по диапазону дат, если есть только начало и конец?

    @Akina
    accountnujen,
    я задал этот вопрос на 4 форумах и никто мне не ответил.

    А в форумах вообще крайне плохо относятся к вопросам типа "сделайте за/для/вместо меня".
    Типичная цепь при построении структуры БД - это

    1) Анализ предметной области
    2) Выделение сущностей и атрибутов, процессов и связей
    3) Построение ER-диаграммы
    4) Создание структуры БД

    Вы первые три пункта не то чтобы левой пяткой - Вы их вообще пропустили. Так что... не послали во фриланс - уже хорошо.

    как мне ещё узнать, какие номера у меня свободны?

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

    @Akina
    архитектуры ещё никакой нет, ... в обсуждении https://qna.habr.com/q/1128924 , где я спрашивал про архитектуру...

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

    это был самый оптимальный вариант.

    Какой болван Вам об этом сказал?

    Для этого я хочу получить в начале все номера, которые заняты в этот промежуток, а затем получить все номера, кроме тех, что заняты.

    Если полученные "в начале все номера, которые заняты в этот промежуток", будут получены только для того, чтобы получить все остальные номера, то это [censored]... в смысле лишние и ненужные операции.

    допустим собрал

    Плохо. OR - это самое последнее, что должно попадать в условие отбора, порой даже хуже функции. Преобразуй в AND NOT.
  • Где лучше генерировать uuid для базы? В коде или в sql запросом?

    @Akina
    чтобы можно было обернуть несколько запросов в транзакцию

    Для справки. Те транзакции, в которые ты оборачиваешь запросы в коде приложения, на самом деле - транзакции, которые организует и выполняет SQL-сервер. Всё, что делает клиентский код при организации и выполнении транзакций - это передаёт SQL-серверу просьбу о транзакции. То есть, обычный паразит-посредник.

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

    Типичный идиотизм, другого слова и не подобрать, от программиста, который до мелочей и тонкостей знает свои язык и среду программирования, но не удосужился освоить хотя бы основы SQL. К сожалению, достаточно частая ситуация.
  • Range и Rows в оконных функциях же работают оба с диапазонами строк?

    @Akina
    ROWS отсчитывает записи в штуках, а RANGE по значению. Если test идёт с шагом 0.1, то фрейм при ROWS включает 4 записи, а при RANGE - 31 запись.
  • Range и Rows в оконных функциях же работают оба с диапазонами строк?

    @Akina
    В показанном запросе окном являются все записи со значением от test-1 до test+2.
  • Как использовать maxmind GeoLite2 на mysql 5.5, где нет inet6_aton?

    @Akina
    Если после импорта поменять тип поля на VARBINARY(4), то запрос из мануала
    [skipped]
    вообще не находит результатов, как и до смены на VARBINARY(4).

    Любое мероприятие окончится неудачей, если не думать, что именно делаешь.
  • Как найти название исключая определенные слова в нем регулярным выражением?

    @Akina
    marselabdullin, блин, что такое "вытащить строку"??? Вернуть ту строку текстового файла, в которой есть эта подстрока (left join RawVault.PRJ_RV_Lnk_Document_X_PostedDocument_Purchases_LastValues tgt)? или только содержащий эту подстроку токен (RawVault.PRJ_RV_Lnk_Document_X_PostedDocument_Purchases_LastValues)? или что-то ещё?