• Как избежать коллизии по данным?

    @Akina
    Pantuchi, не, я не понял...

    Во-первых, Вы специально и сознательно делаете всё, чтобы описанные коллизии были не только возможны, но и почти что неизбежны.

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

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

    В общем, проблема не в SQL-сервере.
  • Как избежать коллизии по данным?

    @Akina
    Pantuchi, а создание объекта - это за пределами MS SQL, то есть это не его проблема. Решается, впрочем, легко - если транзакция обломилась, объект уничтожается.
  • Как избежать коллизии по данным?

    @Akina
    Пользователь не дожидаясь ответа обновляет страницу и снова создает объект. Получается уже две транзакции в очереди. По итогу когда очередь доходит до выполнения имеем в базе два одинаковых объекта (созданных вплоть до ms) что ломает логику программы.

    В таблице должны быть уникальные индексы, блокирующие создание дубликатов. Тогда вторая транзакция просто окончится неудачей.
  • Как создать sql песочницу?

    @Akina
    Это называется "SQL fiddle".

    Стандартное решение - для каждого сеанса развёртывается временная копия БД, которая прибивается после сеанса. И создаётся пользователь, который имеет права только в данной БД. Плюс внешние ограничения - на максимальный размер БД в файловой системе, к примеру. Так что любой идиотизм пользователя разбивается об уничтожение плодов его труда после закрытия сеанса.

    Фиксация правильных решений и последующее их применение на рабочей БД - забота и ответственность пользователя.
  • Как получить данные только при многократных совпадениях?

    @Akina
    Убрать DISTINCT, группировать, посчитать количество.
  • SQL Можно ли получить результат одним запросом, без subselect?

    @Akina
    symnoob,
    GROUP BY 1 потому, что так проще. Ну и просто было лень писать имя поля.
    Что до производительности - зависит от статистики данных. Скорее всего самым производительным будет WHERE NOT EXISTS, но кому-то не нравятся подзапросы.
  • Почему postgres не считает null уникальным значением?

    @Akina
    Антон Антон, Ну да, именно так. Если ноль - легитимное значение, то нужно заменить его на допустимое типом данных, но не допустимое логикой системы.
  • Как сравнить данные в нескольких excel файлах?

    @Akina
    Пробовал просто скопировать все таблицы в один файл и сделать удаление дубликатов, не вышло, т.к. он половину удалил не то, что нужно.

    Это могло произойти в двух случаях.

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

    Второй - это случай, когда идентифицирующее значение совпадает, а данные в остальных колонках различны. Но в этом случае лишь человек может решить, данные из какого файла нужно взять, а из какого - проигнорировать, автоматически подобные вопросы обычно не решаются. Ибо, как я понимаю, явно заданного приоритета не имеется.
  • Почему postgres не считает null уникальным значением?

    @Akina
    для более ранних версий нужно хранить в этом поле не NULL, а, например, 0

    Зачем ноль-то? Функциональные индексы вроде никто не отменял...
  • Чем редактировать файл.bytes и .db?

    @Akina
    Расширение файла в принципе никак не связано с его содержимым. Вопрос лишён смысла.
  • Как при выводе данных из базы модифицировать одно из полей?

    @Akina
    Нужно при получении данных из базы применить дополнение entities на поле "name" и преобразовать его в html код. Так как html код Test (1) попадает в базу данных в виде <p>Test (1)</p>

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

    @Akina
    Что значит "менять"? Вводишь вручную "18 октября 1986 года", а в ячейку записывается "18.10.1986" с форматом Дата? Или есть колонка с полным форматом даты, и её надо конвертировать в краткий? или что-то ещё?
    В любом случае придётся делать свой конвертор на VBA.
  • Задача с перестановкой спичек?

    @Akina
    А чё везде 876-то? очевидно же, что решение, то есть минимальное число - 536...
  • Как реализовать формирование документа?

    @Akina
    Word - слияние (Рассылки). Файл Excel - источник данных.
  • Почему не работает маршрутизация между vlan'ми?

    @Akina
    Ну кто мешал погрузить картинку в Paint и добавить текст красиво, а не чёрт те как...
  • Делит ли сабнеттинг бродкаст домейны?

    @Akina
    Маршрутизация между VLAN'ами - вы не сможете её реализовать без деления на подсети

    Да как два пальца об асфальт! Сетевой мост - что, не слышал? ну почитай...

    доблестный неуч Akina уверяет, что подсети вланам вообще не нужны

    Во ты [censored]... даже неспособен понять до конца, что тебе пишут. Нафига тогда вообще спрашивать?
    Зато гонору - на троих хватит.

    Ладно, говорю явно. В одном вилане может быть несколько подсетей. И наоборот, в разных виланах может быть одна и та же подсеть, или две перекрывающиеся подсети. Более того, может быть и то, и другое одновременно. Всё определяется задачами.
  • Как оптимизировать пагинацию отсортированных по времени создания записей?

    @Akina
    Nikita Dergachov, Какие именно изменения? Будут удаляться записи? будет изменяться значение поля даты создания? или изменения не затрагивают предрасчётные данные?
  • Как оптимизировать пагинацию отсортированных по времени создания записей?

    @Akina
    Как я понимаю, требуемая пагинация - частовыполняемая операция, а сама таблица INSERT only? Обычно направление ускорения в указанном случае - предсортировка. То есть заранее создаётся опорная таблица, например (дата - количество записей ранее этой даты), что позволяет сразу вычислять начальную дату для текущей страницы, тем самым уменьшая OFFSET и соответственно ускоряя выборку для текущей страницы.
  • Делит ли сабнеттинг бродкаст домейны?

    @Akina
    alfonzob00baron, Вы, друг мой, со своим нулевым вкладом, но непомерным самомнением, очень сильно ошибаетесь. Причём почти по всем пунктам.

    Высказать своё мнение, а потом обидеться, что кто-то с ним согласился? более чем странно...

    По описанию видно, что Вы что-то прочитали про широковещательный домен. Но мало чего поняли, ещё меньше поняли правильно.

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

    Вопрос - зачем его вводить?

    А вот тут ответ прост до изумления. Рассматриваем схемы с делением и без, оцениваем по имеющимся критериям. И выбираем по совокупности оценок лучший вариант из двух. А абстрактное "зачем" без полного описания системы и набора критериев - это типичное "у меня в подполе происходит стук". Которое в принципе не предполагает однозначного ответа, кроме столь же абстрактного "Патамучта".
  • Почему запрос SQL не проходит без GROUP BY?

    @Akina
    shurshur, Постгресс как раз поддерживает расширение выражения группировки: https://dbfiddle.uk/cEN6Iix5

    Правда, он не умеет распространять расширение, оставаясь только в контексте таблицы. В отличие от, скажем, MySQL: https://dbfiddle.uk/6XDwA5Jn

    Вот с Ораклом да, беда... но это не самая большая беда, которая с Ораклом.